ホームページ  >  記事  >  ウェブフロントエンド  >  jQueryで以降の実行内容をキャンセルする方法の解析例

jQueryで以降の実行内容をキャンセルする方法の解析例

高洛峰
高洛峰オリジナル
2016-12-03 09:13:17984ブラウズ

この記事ではjQueryで後続の実行内容をキャンセルする例を中心に紹介しており、コードも分かりやすいです。困っている友達は見てみてください

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
 <title></title>
 <script type="text/javascript">
  //点击a标签,不进行页面跳转
  window.onload = function () {
   var obj = document.getElementById("myhref");
   obj.onclick = function (event) {
    //取消默认行为
    //return false;
    //分浏览器
    //IE下
    //01.第一道能力检测
    event = event || window.event;
    if (event.preventDefault) {
 
      //非IE下
     event.preventDefault();
    } else {
     event.returnValue = false;
    }    
   };
  }
 </script>
</head>
<body>
 <a id="myhref" href="http://www.baidu.com">去百度</a>
</body>
</html>

ここでの a タグのクリック効果は、本来は Baidu ページにジャンプするものですが、このクリック イベントの後続のコンテンツが実行されないように、パラメーターを使用してデフォルトの動作をキャンセルすることができます。

同じラベルをクリックした後に複数のイベントが発生する場合があります。最初のイベントのみを実行して後続のイベントを破棄したい場合は、それを防ぐコードを追加できます:

472e3b9f821ead67282fe6017c1d4997クリックしてください!54bdf357c58b8a65c66d7c19c8e4d114

jquery はどのようにバインド後のイベントを防ぐのですか

あなたのコードはページ中にすでに読み込まれていますロードプロセス イベントバインディングが完了した後、後でバインドされたイベントを防ぐ方法はありませんが、現在指定されているノードのイベントバインディングを削除することはできます。メソッドは次のとおりです:

$("#btn").click(function(){
if($("#tx").val()==""){
alert("e1");
}else{
//删除后绑定的事件。。。
$("#btn").unbind(&#39;click&#39;);
}
});

説明:

unbind([type],[data])
bind() の逆の操作は、一致する各要素からバインドされたイベントを削除します。

パラメータがない場合、バインドされたイベントはすべて削除されます。

bind()で登録したカスタムイベントのバインドを解除できます。

I イベント タイプがパラメーターとして指定された場合、そのタイプのバインドされたイベントのみが削除されます。

バインディング時に渡されたハンドラー関数が第 2 パラメータとして使用されている場合、この特定のイベント ハンドラー関数のみが削除されます。

jquery: 2 回目のクリック イベントを防ぐにはどうすればよいですか?

jquery は、クリックを 1 回だけトリガーするメソッド

obj.one(function(){
});

、または obj.unbind("click") を使用してクリック イベントをキャンセルするメソッドを提供します

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。