jqueryのイベントをバブリング防ぎます

バブリングイベントとは何ですか?

    親要素のイベントイベントを結合要素を結合するときに子要素をクリックした場合、子供を与えながら子要素は、親要素でラップされ、親要素のイベントは、シーケンスを開始することになると、子→親要素です。

なぜバブリングイベントのために解決?

    子要素、および親要素が同時にイベントをクリックしてバインドすると、あなたは子要素をクリックしたとき、あなたは親要素のイベントも起動している必要はありません。

バブリングイベントを解決する方法は?

  1.event.stopPropagation()。

  

$(function() {
            $(".three").click(function(event) {
                event.stopPropagation();
            });
        });

定義と使用法

もはやイベントを配布しません。

通信処理の捕捉、目標処理や膨れステージの更なる普及に終了イベント。このメソッドを呼び出した後、ハンドラは、イベントはもはや他のノードに派遣され、そのノード上のイベントが呼び出されます処理しません。


2.return false;
$(function() {
  $("#three").click(function(event) {
    return false;
  });
});
3.event.preventDefault()。
$(function() { $(".three").click(function(event) {  event.preventDefault(); }); });

定義と使用法

イベントのデフォルトのアクションをキャンセルします。この方法は、(そのような行為があった場合)イベントに関連付けられたデフォルトのアクションを実行しないように、Webブラウザに指示します。たとえば、type属性は、イベント伝播のいずれかの段階で、「送信」である場合には、このメソッドを呼び出すことによって、あなたがフォームを送信ブロックすることができ、任意のイベントハンドラを呼び出すことができます。イベントオブジェクトのcancelableプロパティがfasleであれば、そこにはデフォルトのアクションではありません、またはデフォルトの動作を妨げることはできないことに注意してください。この方法のいずれかの場合は、呼び出しは何の効果はありません。

 

おすすめ

転載: www.cnblogs.com/shangmao/p/11578577.html