リンク要素(タグ)または他のDOM要素のclick
イベントがハンドラ/コールバック関数を呼び出さないという問題が発生しました。Chrome 56モバイルaddEventListener「クリック」が機能しない
階層内のどの親がこのイベントを取得しないかは関係ありません。
なしEvent.stopImmediatePropagationまたはEvent.stopPropagationは存在しません。
リンク要素(タグ)または他のDOM要素のclick
イベントがハンドラ/コールバック関数を呼び出さないという問題が発生しました。Chrome 56モバイルaddEventListener「クリック」が機能しない
階層内のどの親がこのイベントを取得しないかは関係ありません。
なしEvent.stopImmediatePropagationまたはEvent.stopPropagationは存在しません。
なぜChrome 56であるのか、いくつかのイベントを変更し、マウスイベントをタッチイベントに変換するのをやめます。
あなたが前にclick
を使用した場合だけで、モバイル用のtouchstart
イベントを使用し、問題を解決します。またはあなたは一つだけclick
が必要な場合はあなたが行うことができます:
Element.addEventListener("click", callback);
Element.addEventListener("touchstart", callback);
function callback(event) {
Element.removeEventListener("click", callback);
Element.removeEventListener("touchstart", callback);
// do something
}
今、シミュレートをクリックして持っているあなたは、「touchstart」と「touchend」との間に300msのパスをチェックする必要があります。少ない場合はクリックがあります。
注:「クリック」イベント「touchstart」
ナイスキャッチした後に発生するが、自分で実装するかhttps://github.com/ftlabs/fastclick/blob/master/lib/fastclick.jsを使用することをお勧めします – Meschiany