为什么JQuery click()方法不起作用?

为什么JQuery click()方法不起作用?,jquery,Jquery,Im试图使用JQuery隐藏HTML元素(h1标记)。它在通过onClck()事件调用我的函数时起作用。但当我试图使用JQuery click()方法隐藏h1元素时,它不起作用。我真的很困惑 这是我的工作示例代码。 函数hideMe(){ $(“#h1”)。隐藏(“慢”); } 你好,世界 这是我不工作的示例代码。 $(“#h1”)。单击(函数(){ $(“#h1”)。隐藏(“慢”); }) 你好,世界 下载我的代码示例 请帮助我理解为什么上面的代码不起作用。谢谢。您需要将绑定包装在D

Im试图使用JQuery隐藏HTML元素(h1标记)。它在通过onClck()事件调用我的函数时起作用。但当我试图使用JQuery click()方法隐藏h1元素时,它不起作用。我真的很困惑

这是我的工作示例代码。

函数hideMe(){
$(“#h1”)。隐藏(“慢”);
}
你好,世界
这是我不工作的示例代码。

$(“#h1”)。单击(函数(){
$(“#h1”)。隐藏(“慢”);
})
你好,世界
下载我的代码示例


请帮助我理解为什么上面的代码不起作用。谢谢。

您需要将绑定包装在
DOMReady
函数中,否则在计算脚本时元素不存在

更新如下:

<script>
$(function() {
    $("#h1").click(function(){
        $("#h1").hide("slow");
    });
});
</script>

$(函数(){
$(“#h1”)。单击(函数(){
$(“#h1”)。隐藏(“慢”);
});
});

您需要确保在添加事件侦听器之前,使用
$(document).ready()执行此操作。简言之:

$(function(){
    $("#h1").click(function(){
        $(this).hide("slow");
    })
})

仅供参考,由于click函数是由
#h1
调用的,因此您可以使用
$(此)
而不是使用选择器重新创建jQuery集合。

它必须在
$(文档)中。ready(function(){…})
处理程序,因为您必须先加载DOM,然后才能执行jQuery代码(一旦加载DOM)


您需要一个
$(document).ready()
处理程序-应该在JQueryOW的任何介绍性课程中描述!成功了!,非常感谢!:)FWIW,这个问题在这里肯定被问了几百次,尽管每次都会有不同的主题。可能是重复的
<script>
$(function() {
    $("#h1").click(function(){
        $("#h1").hide("slow");
    });
});
</script>
$(function(){
    $("#h1").click(function(){
        $(this).hide("slow");
    })
})
$(document).ready(function() {
     $("#h1").click(function(){
         $("#h1").hide("slow");
     });
});