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()}})