首页  >  文章  >  web前端  >  实例解析jQuery中如何取消后续执行内容

实例解析jQuery中如何取消后续执行内容

高洛峰
高洛峰原创
2016-12-03 09:13:17951浏览

本文主要介绍了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标签的点击效果本来是要跳转到百度页面的,但是我们通过参数取消默认行为的方式可以让这个点击事件的后续内容不执行。

有时候会遇到 同一个标签上点击后有多个事件,如果只想执行第一个事件而放弃后面的事件,可以加上一段代码来阻止:

684f619b04b094a9390885f71c36283bclick me!54bdf357c58b8a65c66d7c19c8e4d114

jquery怎阻止后绑定的事件

你的代码在页面载入过程中已经完成事件绑定了,没有阻止后绑定的事件的办法了,不过可以删除当前指定节点的事件绑定。方法如下:

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

说明:

unbind([type],[data])
bind()的反向操作,从每一个匹配的元素中删除绑定的事件。

如果没有参数,则删除所有绑定的事件。

你可以将你用bind()注册的自定义事件取消绑定。

I如果提供了事件类型作为参数,则只删除该类型的绑定事件。

如果把在绑定时传递的处理函数作为第二个参数,则只有这个特定的事件处理函数会被删除。

jquery:怎可以阻止第二次点击click事件?

jquery提供了一个只触发一次点击的方法

obj.one(function(){
});

或者用obj.unbind("click")取消点击事件

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn