JQuery新手。
使用此代码,“2”的警报有效,但从不警报“1”。 我可以切换顺序并获得相同的结果,并且必须加载JQuery,否则两者都无法工作。那么匿名函数声明的问题是什么?
<script type="text/javascript">
$(document).ready(function () {
alert('1');
});
$(document).ready(
alert('2')
);
</script>
答案 0 :(得分:4)
您没有在第二次调用ready()
中传递函数,而是alert()
返回的值(即undefined
)。
这意味着立即调用alert()
(无需等待文档准备就绪),然后将undefined
传递给ready()
,这会导致无操作(或可能是一个错误,取决于你正在使用的jQuery的版本。)
您的第一个电话是正确的方式。
答案 1 :(得分:2)
要么是
$(document).ready(function() {
...
});
或
$(function() {
...
});
这些是等效的。如第二个例子中那样没有function(){}
的呼叫是错误的。
有几个文档就绪函数是没有意义的。只需将代码放在一个函数中即可。