什么情况下 `return false` 与 `e.preventDefault()` 做的事情不同? [复制]
Posted
技术标签:
【中文标题】什么情况下 `return false` 与 `e.preventDefault()` 做的事情不同? [复制]【英文标题】:What are the cases when `return false` does not do the same thing as `e.preventDefault()`? [duplicate] 【发布时间】:2011-09-17 00:31:48 【问题描述】:可能重复:javascript: event.preventDefault() vs return false
return false
不做与e.preventDefault()
相同的事情的情况有哪些?
(注意我不是在谈论 jquery 事件.. 而是一般的 javascript 事件)
我能想到的唯一情况是超链接上的click
事件(如果您在处理程序中返回 false,您仍将被重定向到该网站)
请注意,如果它不是click
事件而是超链接上的mousedown
事件,则返回 false 的工作方式与 e.preventDefault() 相同
【问题讨论】:
【参考方案1】:我相信return false
同时等同于e.preventDefault();
和e.stopPropagation();
。但是,我建议您使用这些函数并返回 false 以实现未来和过去的浏览器兼容性:
$("#something").click(function(e)
alert("Something was clicked");
e.preventDefault();
return false;
);
广告@m
【讨论】:
以上是关于什么情况下 `return false` 与 `e.preventDefault()` 做的事情不同? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
js中return;return truereturn false;区别
js中return;return truereturn false的区别