首页 > 代码库 > jQuery初始化加载的实现

jQuery初始化加载的实现

与jQuery事件模块的其他事件不同,其他事件是通过数据缓存实现的,而初始化事件,jQuery.ready则是通过回调函数列表实现的。以下是对jQuery源代码中的ready事件进行了简化的代码。具体如下:

1.定义了jQuery.ready.promise.功能及代码实现如下:

    //jQuer的DOM页面加载通过回调函数列表完成    //下面的函数:1)初始化一个回调函数列表    //2)向DomContentLoaded注册监听事件    jQuery.ready.promise=function(obj){        if(!readyList){            readyList=jQuery.Defered();            document.addEventListener(DOMContentLoaded,compeleted,false);        }        return readyList.promise(obj);    };

2.向document的DOMContentLoaded注册的监听函数compeleted代码如下:

        compeleted=function(){            document.removeEventListener(DOMContentListener,compeleted,false);            jQuery.ready();        }; 

3.上述代码中的jQuery.ready()实际上完成了回调函数列表的触发操作,具体如下:

        ready:function(){            readyList.resolveWith(document,[jQuery]);        }

  

 

jQuery初始化加载的实现