jQuery没有找到元素

Mih*_*uja 3 jquery selector

jQuery没有找到任何元素.alert($("#testbutton").length);每次显示0.

难道我做错了什么?

我的JS/jQuery代码:

(function ($) {
    alert($("#testbutton").length);
}) (jQuery);
Run Code Online (Sandbox Code Playgroud)

我的HTML:

<html>
    <body>
        <div id="header">
            <div class="button" id="testbutton">Test</div>
        </div>
    </body>    
</html>
Run Code Online (Sandbox Code Playgroud)

Jam*_*ice 5

当您的代码运行时,DOM尚未就绪,因此该元素不存在.你的意思是这样做(将函数传递给jQuery是一个快捷方式$(document).ready(fn)):

$(function () {
    alert($("#testbutton").length);
});
Run Code Online (Sandbox Code Playgroud)

  • @InternalServerError - 不,不是.它只是一个立即执行的函数表达式,它传递给`jQuery`对象.第二个是完全不同的 - 将函数传递给jQuery. (2认同)
  • 我不相信这种情况; 第一个是IIFE,它只是将`jQuery`变量传递给正在执行的函数; 第二个是`$(document).ready(function(){});`的简写 (2认同)