如题,请问,在 jQuery 的事件处理函数中 event.preventDefault()
和 return false
有什么区别呢?
$("#btn").click(function(event){
event.preventDefault();
return false;
// 上面两行代码的效果有什么区别?
});
如题,请问,在 jQuery 的事件处理函数中 event.preventDefault()
和 return false
有什么区别呢?
$("#btn").click(function(event){
event.preventDefault();
return false;
// 上面两行代码的效果有什么区别?
});
要回答这个问题,最好是参考jQuery官方的 API 文档,在 jQuery.on() 方法的API说明中有这样一句话(jQuery中几乎所有的事件处理绑定方法底层都是基于jQuery.on()
的):
Returningfalse
from an event handler will automatically callevent.stopPropagation()
andevent.preventDefault()
.
这句话就解答了你的问题: return false
相当于自动调用了 event.stopPropagation()
and event.preventDefault()
。
event.stopPropagation() 是用来中止当前事件的继续冒泡。
event.preventDefault() 是用来取消当前事件触发的默认行为。