Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 什么时候应该在jquery函数中使用return false?_Javascript_Jquery_Callback_Return Value - Fatal编程技术网

Javascript 什么时候应该在jquery函数中使用return false?

Javascript 什么时候应该在jquery函数中使用return false?,javascript,jquery,callback,return-value,Javascript,Jquery,Callback,Return Value,我发现了很多像这样的函数: $(function() { $("body a").click(function() { alert(this.innerHTML); return false; }); }); jquery中的这个和$(这个)有什么区别 它们都有一行返回false-我不知道什么时候应该在jquery函数中使用return false,也不知道它有什么用?您正在单击一个锚点,它的默认行为是导航到某个地方。返回false可能是为了阻止

我发现了很多像这样的函数:

$(function() {
    $("body a").click(function() {
        alert(this.innerHTML);
        return false;
    });
});
jquery中的
这个
$(这个)
有什么区别


它们都有一行
返回false-我不知道什么时候应该在jquery函数中使用
return false
,也不知道它有什么用?

您正在单击一个锚点,它的默认行为是导航到某个地方。返回false可能是为了阻止导航并使用户保持在当前页面/视图上

根据(存档链接),调用时返回
false
执行三个任务:

  • event.preventDefault()
  • event.stopPropagation()
  • 停止回调执行并在调用时立即返回
  • 取消默认行为所需的唯一操作是
    preventDefault()
    。发出
    返回false可以创建脆弱的代码。通常,您只需要以下内容:

    $("a").on( 'click', function (e) {
        // e == our event data
        e.preventDefault();
    });
    
    其次,“this”是javascript中的DOM元素,“$(this)”是jQuery元素
    它引用DOM元素。阅读有关主题的更多信息。

    在单击处理程序的范围内,
    这是未包装的DOM元素<代码>$(this)
    将其包装并返回jQuery元素。通常的做法是将其包装一次,并在范围内作为
    that
    ,或者通常是
    $this
    (用$前缀变量名是一种表示jQuery元素的惯例)

    因此,您的示例可以写成

    $(function() {
        $("body a").click(function() {
            var $this = $(this);
            alert($this.html());
            return false;
        });
    });
    

    存档页面与原始页面一样看起来没有响应: