JQuery匿名函数没有触发

时间:2012-07-11 14:39:20

标签: jquery

JQuery新手。

使用此代码,“2”的警报有效,但从不警报“1”。 我可以切换顺序并获得相同的结果,并且必须加载JQuery,否则两者都无法工作。那么匿名函数声明的问题是什么?

    <script type="text/javascript">
        $(document).ready(function () {
            alert('1');
        });

        $(document).ready(
            alert('2')
        );
     </script>

2 个答案:

答案 0 :(得分:4)

您没有在第二次调用ready()中传递函数,而是alert()返回的值(即undefined)。

这意味着立即调用alert()(无需等待文档准备就绪),然后将undefined传递给ready(),这会导致无操作(或可能是一个错误,取决于你正在使用的jQuery的版本。)

您的第一个电话是正确的方式。

答案 1 :(得分:2)

要么是

$(document).ready(function() {
 ...
});

$(function() {
 ...
});

这些是等效的。如第二个例子中那样没有function(){}的呼叫是错误的。

有几个文档就绪函数是没有意义的。只需将代码放在一个函数中即可。