可以在同一页面上多次调用$(document).ready吗?如果是这样,代码运行的顺序如何解决,这是否有任何影响
我在我的 Rails 应用程序中使用 jQuery。我通过应用程序使用了几个级别的 javascript,所有这些都使用 jQuery。
例如,我的 application.js 中有一些默认代码淡出 Flash Notices通过编辑操作。
在我使用的所有三个 js 文件中:
$(document).ready
{
//Do something
}
可以在同一页面上多次调用$(document).ready吗?如果是这样,代码运行的顺序如何解决,这是否有任何影响
我在我的 Rails 应用程序中使用 jQuery。我通过应用程序使用了几个级别的 javascript,所有这些都使用 jQuery。
例如,我的 application.js 中有一些默认代码淡出 Flash Notices通过编辑操作。
在我使用的所有三个 js 文件中:
$(document).ready
{
//Do something
}
没关系。
执行顺序将与它们使用的顺序相同。
先进先出
jQuery 有一个内部队列,称为readyList
存储就绪事件的所有回调。当您ready
使用回调调用函数时,只需将其添加到队列中并在 DOM 准备好时触发整个队列。
查看 jQuery 源代码可以很容易地告诉你:
源代码:
// The deferred used on DOM ready
readyList,
...
...
ready: function( fn ) {
...
// Add the callback
readyList.add( fn );
return this;
}
jQuery 中对 $(document).ready 的调用按照定义的顺序执行。更多信息在这里 http://docs.jquery.com/Tutorials:Multiple_$(document).ready()