多个$(文档).ready函数

Spi*_*idy 9 html jquery

如果我有多个$(document).ready(...)功能,它们会相互覆盖吗?为了争论,假装正确的编码被抛出了这个.

假设$(document).ready(function() {...});我的网站脚本文件中有一个.然后我使用也使用的第三方插件$(document).ready(function() {...});.这会覆盖我已经创建的函数,还是在文档准备就绪时jQuery将这些函数"排队"到所有运行状态?

dav*_*vin 18

不,他们不会互相覆盖.每个功能都被执行.

你当然可以自己检查一下:http://jsfiddle.net/6jgGt/

或者从jQuery代码本身理解:

第255行是就绪函数,其中jQuery.bindReady();调用该函数,其中readyList在线429上初始化对象readyList = jQuery._Deferred();

一旦它是一个延迟对象,传入的函数被附加,readyList.done( fn );我们可以在第done 41行方法中看到该元素被添加到一个数组中,callbacks.push( elem );因此每个元素都被单独保存...