preventdefault作用jQuery事件阻止冒泡stopPropagationpreventdefault 阻止冒泡




preventdefault作用jQuery事件阻止冒泡stopPropagationpreventdefault 阻止冒泡

2022-07-21 2:10:04 网络知识 官方管理员

1、阻止默认行为

阻止<a>超链接的跳转href

<aonclick="testEvent(event)"href="baidu.com"></a>functiontestEvent(event){event.preventDefault();//该方法阻止元素发生默认的行为window.zhad.push({eventtype:'js_buy'});setTimeout(function(){window.location.href=event.target.href;},200);}//或者$("a").click(function(e){e.preventDefault();});

阻止表单的提交

$("form:eq(0)").submit(function(e){e.preventDefault();});

阻止鼠标右键(contextmenu表示鼠标右键事件):

$(document).contextmenu(function(e){e.preventDefault();});//contextmenu表示鼠标右键事件,用法与一般事件相同//等同于$(document).bind("contextmenu",function(){alert("鼠标右键")});

2、阻止冒泡并阻止默认行为

$("a").click(function(e){e.preventDefault();e.stopPropagation();//取消事件冒泡});//等效于$("a").click(function(e){returnfalse;});

取消冒泡并阻止后续事件stopImmediatePropatation()

$(":submit").click(function(e){e.stopImmediatePropagation();//e.stopPropagation();alert("1");});$(":submit").click(function(){alert("2");});//例子说明:如果使用stopPropagation()那么会取消冒泡,但是仍然后弹出两次。//如果使用stopImmediatePropatation()那么不但会取消冒泡,还会取消后续绑定的事件。

3、取消默认回车事件

有时候回车按键的默认事件不是我们想要的,可以通过阻止事件的默认行为来达到我们想要的效果。

$(document).on('keydown','li',function(e){if(e.keyCode==13){e.preventDefault()}})//等效于$("li").keydown(function(e){if(e.keyCode==13){e.preventDefault()}})

发表评论:

最近发表
网站分类
标签列表