私は以前にイベントの泡立ちの問題に遭遇したので、オンラインで検索しましたが、それらのほとんどは同じコードであり、それを使用するのはあまりスムーズではありませんでした。 FFに関しては、E.StopPropagation()を使用できます。 、そしてどういうわけか私は成功できませんでした。ただし、FFはE.CancelBubble = true;のライティング方法をサポートしていることがわかりました。これはテスト後に実行可能です。将来どこでも検索を避けることができるように、ここにコードを投稿するだけです。以前のIEバージョンの互換性はまだテストされていないため、使用すると改善します。
コードコピーは次のとおりです。
//イベントバブルをキャンセルします
関数stopbubble(e){
var evt =(e)? E:window.event; // ffと互換性があります
evt.cancelbubble = true; //evt.stoppropagation(); FFの下で泡を防ぐために、それは有用であると言われています
};
他の:
1。CancelBubble(HTML DOM Event Object Property):イベントハンドルがイベントが包括的オブジェクトに伝播するのを防ぎたい場合、プロパティをTrueに設定する必要があります。
2。StopPropagation(HTML DOM Event Object Method):伝播プロセスのキャプチャ、ターゲット処理、またはバブルステージ中に終了イベントがさらに伝播されます。この方法を呼び出すと、イベントを処理するノード上のハンドラーが呼び出され、イベントは他のノードに発送されなくなります。
3.PreventDefault(HTML DOM Event Object Method)は、ブラウザにイベントに関連付けられたデフォルトアクションを実行しないように通知します。
例:
関数stopbubble(e)
{
if(e && e.StopPropagation)
e.StopPropagation()
それ以外
window.event.cancelbubble = true
}
このstopbubble(e)関数を関数に入れて、イベントの泡立ちを防ぎます。