javascript - 何时以及为什么在 JavaScript 中“返回 false”?

📂 best365从哪能进去 ⏳ 2025-09-02 20:31:27 👽 admin 👁️ 1368 💾 48
javascript - 何时以及为什么在 JavaScript 中“返回 false”?

为什么返回 false,或者事实上,为什么返回任何东西?

函数中的代码return(val);将 的值返回给函数val的调用者。或者,引用 MDN 网络文档,它...

...结束函数执行并指定要返回给函数调用者的值。(来源:MDN 网络文档:return。)

return false;then 在事件处理程序中很有用,因为事件处理程序使用此值来确定进一步的操作。 return false;取消通常由处理程序发生的事件,同时return true;让这些事件发生。再次引用 MDN 网络文档...

处理程序的返回值确定事件是否被取消。(来源:MDN Web 文档:DOM OnEvent Handlers。)

如果你要取消一个事件,返回 false;本身是不够的。

您还应该使用Event.preventDefault();and Event.stopPropagation();。

Event.preventDefault();:停止默认的链接点击行为。

Event 接口的 preventDefault() 方法告诉用户代理,如果事件没有得到显式处理,则不应像通常那样采取其默认操作。(来源:MDN 网络文档。)

Event.stopPropagation();:阻止事件单击包含父级 DOM 中的链接(即,如果两个链接在 UI 中视觉上重叠)。

Event 接口的 stopPropagation() 方法可防止在捕获和冒泡阶段进一步传播当前事件。(来源:MDN 网络文档。)

工作演示

在这个演示中,我们取消了一个链接的功能,并通过、和onclick来防止链接被点击。return false;preventDefault()stopPropagation()

完整的 JSBin 演示。

StackOverflow 演示...

document.getElementById('my-link').addEventListener('click', function(e) {

console.log('Click happened for: ' + e.target.id);

e.preventDefault();

e.stopPropagation();

return false;

});

Link

相关数据包

tcl怎么进入主菜单?如何在TCL电视上快速访问主菜单?
深度:1米68的坎特为何能成为当下世界最佳防守型中场?
如何戒安眠藥?身心科醫師的3個叮嚀,讓你不再被安眠藥綁架
精神抖擞的意思,精神抖擞是什么意思,精神抖擞的解释
← 你我贷款审批全流程解析:从申请到放款要多久? 2025年适合做视频直播的笔记本电脑型号有哪些? →