扫码关注官方订阅号
在jquery里我经常看到有人两种都用
jsa.click(function () { event.stopPropagation() return false; });
js
a.click(function () { event.stopPropagation() return false; });
是因为兼容性考虑吗?我只是想阻止后面的事件继续运行,到底该用哪种
光阴似箭催人老,日月如移越少年。
preventDefault
stopPropogation
return false
也就是说:
function() { return false; } // 相当于 function(e) { e.preventDefault(); e.stopPropagation(); }
一般情况下使用在jquery中使用return false,既阻止了默认事件也阻止了冒泡事件
实际上如果a标签的href=“javascript:void(0)”的时候,
在IE6以上的浏览器中增加click事件是不用使用return false的
但是在IE6中,会导致链接失效,因为在click事件执行后执行了默认事件javascript:void(0)
所以这个时候很多人写成return false, 这个基本是暴力解决方案
当然使用preventDefault()就可以解决问题了。
我想代码中使用stopPropagation(),可能是他没有弄明白到底是什么原因导致的链接失效吧
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
扫描下载App
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
preventDefault
,stopPropogation
,return false
对比也就是说:
一般情况下使用在jquery中使用return false,既阻止了默认事件也阻止了冒泡事件
实际上如果a标签的href=“javascript:void(0)”的时候,
在IE6以上的浏览器中增加click事件是不用使用return false的
但是在IE6中,会导致链接失效,因为在click事件执行后执行了默认事件javascript:void(0)
所以这个时候很多人写成return false, 这个基本是暴力解决方案
当然使用preventDefault()就可以解决问题了。
我想代码中使用stopPropagation(),可能是他没有弄明白到底是什么原因导致的链接失效吧