可能重复:
What's the effect of adding 'return false' to an onclick event?
When and why to 'return false' in javascript?
我的意思是,如果我有这个功能:
function openMask() {
alert("enter");
}
最好把它称为:
<a href="javascript:void(0);" onclick="openMask()">Link</a>
或:
<a href="javascript:void(0);" onclick="openMask(); return false;">Link</a>
???我真的很好奇!永远不明白差异......
答案 0 :(得分:4)
在DOM事件处理程序(例如onclick
)中,返回true
表示“继续事件”,返回false
表示“不要”。
在这种情况下,它并不完全有意义,因为您的href
已经javascript:void(0)
(它不会做任何事情)。
但是请注意,javascript:
URI应该真正避免,并且这对非Javascript用户没有多大帮助,所以你应该提供一个后备页面,然后return false
成为更有意义:
JS:
function openMask() {
alert("enter");
return false;
}
HTML:
<a href="fallbackpage.html" onclick="return openMask();">Link</a>
答案 1 :(得分:3)
最好的方法是使用:
<a href="/page/with/opened/mask" onclick="openMask(); return false;">Link</a>
因此,没有JavaScript的用户(包括Google Bot)可以使用您的网站。
答案 2 :(得分:1)
return false
会导致浏览器忽略href
。在您的具体示例中,由于href
什么也不做,所以它什么都没改变,但是如果您有类似href='#'
答案 3 :(得分:1)
return false
表示阻止事件的默认行为。在您的示例中,这会阻止浏览器打开链接的网址