2011-06-20 15 views
0

私は以下のように動作する「メインタブ」のあるページを持っています。 1.これらをホバーすると、 "サブタブ"が表示されます 2.メインタブのいずれかをクリックすると、デフォルトのサブタブページのいずれかに移動します。iPad用のホバーイベントSafari

$(".mainlink_href").mouseover(function(){...} 

これらは、デスクトップブラウザでは正常に動作します。しかし、iPad上では、メインタブのいずれかをクリックすると常にホバーメソッドの実行が行われます(サブタブを表示し、デスクトップのように)。

そうでなければホバーイベントを追跡するマウスカーソルがないので、これは予想されるiPadの動作と同じです...

しかし、「iPad専用」のコードを更新する方法はありますか最初のクリックのためのホバーメソッドではなく、代わりにclickイベントを行い、ユーザーをデフォルトのサブタブページに直接移動させます(デスクトップブラウザの上のポイント2に似ています)。

私を助けてください。ありがとうございました。

+0

煎茶タッチに見:)だけでなく、私は煎茶タッチを認識してい – Val

+0

...私はそれをお勧めします、そして、それはあなたを吹き飛ばすだろう、シンプルなGoogle検索...しかし、私があるかどうかわかりませんSenchaのタッチをここに含める必要がある...私はちょうどiPad上のホバリングの振る舞いをオーバーライドする必要がある。私は単純なJSアップデートではできないことを意味する。 – testndtv

+0

試して、$ .browserがそのipad確かに試してみる価値があります)と$ .fn.mouseover = function(){...}ので、あなたはそれを上書きすることができます...またはjquery mobileを見ることができますか?またはjquery touch :) – Val

答えて

1

イベントハンドラの両方を割り当てるだけで、ontouchstartハンドラでonmouseoverハンドラを削除することができます。

$(".mainlink_href").mouseover(function(){...}); 
$(".mainlink_href").ontouchstart(function(){this.mouseover=function(){};}); 
+0

Thx a lot ..マウスオーバーハンドラが削除される間だけの質問ですが、クリックは自動的に実行されます。つまり、ユーザーはhrefターゲットに移動されます。または、クリック動作を2回クリックする必要があります。 – testndtv

+0

確認してください。しかし、私はそれが問題ではないと思う。タッチスタートは何よりも先に呼び出され、ユーザーがスクリーンから指を離した後にのみonclickが呼び出されます。 – Gerben

+0

実際には、別途「クリック」ハンドラはありません。を介して、クリックすると次のページに移動します。 – testndtv

関連する問題