DomReady实现策略

 在页面的DOM树创建完成后(也就是HTML解析第一步完成)即触发,而无需等待其他资源的加载,即DomReady实现策略:

1.支持DomConentLoaded事件的,就使用DomConentLoaded事件。

2.不支持的,就用Diego perint发现的著名hack兼容,兼容原理大概就是通过IE中的document.documentElement.doScroll("left");

注:IE有个特有的doScroll()方法,当页面Dom未加载完成时,调用doScroll()方法,就会报错,反过来,只要一直间隔调用doScroll方法直到不报错,那就表示Dom加载完毕。

例  

 
/*doScroll判断ie6-8的DOM是否加载完成
     *
     *@param    null
     *@execute  doScroll判断DOM是否加载完成
     *@caller   bindReady()
     */
    function doScroll(){
        try{
            document.documentElement.doScroll('left');
        }
        catch(error){
            return setTimeout(doScroll,20);
        };
        execFn();
    };
 各主流框架DOMReady的实现最新地址是:
http://www.cnblogs.com/JulyZhang/p/1952484.html
原文地址:https://www.cnblogs.com/he-qiang/p/5767952.html