38

現在のコードを使用しています:

$('body').mousedown(function() {
        $('div#extras').fadeTo('fast', 1);
});

$('body').mouseup(function() {
        $('div#extras').delay(2000).fadeTo(1500, 0);
});

これはサファリではうまく機能しますが、アップロードしてiPadでチェックアウトすると機能しませんか?

4

4 に答える 4

86

興味のある人のために、iPadでこれを行う方法を見つけました:

質問で使用したコードの代わりに、次を使用します。

$('body').bind( "touchstart", function(e){
        $('div#extras').fadeTo('fast', 1);
});

&

$('body').bind( "touchend", function(e){
        $('div#extras').delay(2000).fadeTo(1500, 0);
});
于 2010-07-21T21:00:48.847 に答える
8

ではない正確に。

Apple ドキュメント

見積もり:

クリック可能な要素は、リンク、フォーム要素、イメージ マップ エリア、または mousemove、 mousedownmouseup、または onclick ハンドラーを持つその他の要素です。スクロール可能な要素は、適切なオーバーフロー スタイル、テキスト領域、およびスクロール可能な iframe 要素を持つ任意の要素です。これらの違いにより、「<a href="https://developer.apple.com/library/archive/documentation/AppleApplications/Reference/SafariWebContent/HandlingEvents」で説明されているように、一部の要素をクリック可能な要素に変更する必要がある場合があります。 /HandlingEvents.html#//apple_ref/doc/uid/TP40006511-SW6" rel="nofollow noreferrer">要素をクリック可能にする」を参照して、iPhone OS で目的の動作を取得します。

(私のものを強調)

于 2010-07-21T21:01:28.277 に答える
6

本当にあなたの質問に答えているわけではありませんが、「ipad での jQuery マウスダウン/マウスアップ」を探すためだけにここに来た人にとっては便利かもしれません

私はいつもこの小さなトリックを使用します:

$(element).hover(function() {
   // Do something
});

これは、iPad を使用している場合はタッチでトリガーされ、ホバー イベントであるため、要素の外側をクリックするとアクションが逆になります。たとえば、次のようになります。

// Assuming the element has 'opacity: 0' in CSS

$(element).hover(function() {
   $(this).animate({'opacity': 1}, 200);
});

「クリック時」のフェードイン効果と「マウスアップ時」のフェードアウト効果を作成します。

于 2014-11-05T15:26:38.100 に答える