0
特定の条件下でSafariがiOSデバイスでバウンスするのを防ぐため、touchStart
イベントを防止したい。クリックイベントのtouchStartを防止するがクリックイベントを許可する
$('.wrapper').on('touchstart', function(e) {
e.preventDefault();
});
しかし、今誰もそれに取り組んでいない:
$('.wrapper').on('click', function() {
$('.wrapper').text('Click fired');
});
私はclick
を置き換えることはできません、私はfolowingを使用していそうするには
他のイベントのイベント。これはエンドユーザーからのものである可能性があります。
iOS 10以前は、バウンスcould be avoided by preventing only touchMove
でしたが、iOS 10以降は、touchStart
も防止されないとバウンスします。
touchStart
イベントだけを防止する方法はありますか?click
イベントを使用する方法はありますか?
Nopに、機能していません。 'click'の前に常に' touchStart'を起動させるようです。したがって、クリックを防止します。 – Alvaro
'クリック 'を' mousedown'に変更するのはどうですか? – Dekel
私が言ったように、それは選択肢ではありません。開発者は任意のイベントを使用することができ、おそらく 'クリック 'を使用します。 回避策を見つけました。しかし、ハックのように見える:DIは、デフォルトを防止した後、イベントターゲット上でクリックイベントを引き起こす:https://jsfiddle.net/8n47whd0/5/ – Alvaro