2

jQuery新手。

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

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

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

2 回答 2

4

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

这意味着alert()立即调用(无需等待文档准备好),然后undefined传递给ready(),这会导致无操作(或可能出现错误,具体取决于您使用的 jQuery 版本)。

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

于 2012-07-11T14:43:52.143 回答
2

要么是

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

或者

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

这些是等价的。在你的第二个例子中没有调用function(){}是错误的。

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

于 2012-07-11T14:43:23.643 回答