イメージギャラリーにAppleの強制タッチイベントが発生しないようにする必要がありますが、「画像を保存」吹き出し。 iOSユーザーが画像を長押しして「画像を保存」を選択するように指示していますが、誤って押しすぎてフォースタッチイベントが発生した場合、特に画像が読み込まれた場合は非常に混乱します新しいページに画像に強制タッチイベントを防止するが、iOS Safariで長押しイベントを許可する
当初、私はtouchforcechange
イベントを聞いて、その力が一定のレベルに達したときにpreventDefault
と呼ぶことを考えました。このようなもの:
imgEl.addEventListener('touchforcechange', 'onTouchForceChange', false)
function onTouchForceChange(e){
if(e.changedTouches[0].force > 0.5 ){
e.preventDefault()
}
}
しかし、それは長いプレスイベントもブロックするようです。また、イベントがForce Touchに切り替わる際の特定の力レベルのようには見えません。
画像にCSSプロパティー-webkit-touch-callout: none;
を追加すると、Force Touchイベントはブロックされますが、もう一度、長押しの吹き出しもブロックされます。
大変ありがとうございます!
WebKitチームがForce Clickを処理するイベントを調査しているように見えますが、これはおそらくこれを行うのに十分なコントロールを提供します。 https://webkit.org/status/#feature-force-click-events –