jQuery .preventDefault 和 .stopPropagation 在返回 false 的函数中使用

jQuery .preventDefault and .stopPropagation used inside a function returning false

本文关键字:函数 false 返回 preventDefault stopPropagation jQuery      更新时间:2023-09-26

jQuery文档指出:

"当同时使用 .preventDefault(( 和 .stopPropagation(( 时,您可以返回 false 以更简洁的方式实现两者......">

这是关于示例的:

// Preventing a default action from occurring and stopping the event bubbling
$( "form" ).on( "submit", function( event ) {
    // Prevent the form's default submission.
    event.preventDefault();
    // Prevent event from bubbling up DOM tree, prohibiting delegation
    event.stopPropagation();
    // Make an AJAX request to submit the form data
});

我的问题是这是如何工作的,在函数中使用"return false"来防止表单或默认操作的发生。任何对官方javascript文档或jQuery文档的引用都是非常宝贵的。

查看 jQuery 源代码

if (ret !== undefined) {
    if ((event.result = ret) === false) {
        event.preventDefault();
        event.stopPropagation();
    }
}

如果事件处理程序返回 false jQuery 将调用 .preventDefault().stopPropagation()事件