色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

javascript IE中的DOM ready應用技巧

 如果只需要對DOM進行操作,那么這時就沒必要等到頁面全部加載了。我們需要更快的方法。
      Firefox有DOMContentLoaded事件可以輕松解決,可惜的就是IE沒有。 
      MSDN關于JSCRIPT的一個方法有段不起眼的話,當頁面DOM未加載完成時,調用doScroll方法時,會產生異常。那么我們反過來用,如果不異常,那么就是頁面DOM加載完畢了!
復制代碼 代碼如下:
function IEContentLoaded (w, fn) {        
    var d = w.document, done = false,        
    // only fire once        
    init = function () {        
        if (!done) {        
            done = true;        
            fn();        
        }        
    };        
    // polling for no errors        
    (function () {        
        try {        
            // throws errors until after ondocumentready        
            d.documentElement.doScroll('left');        
        } catch (e) {        
            setTimeout(arguments.callee, 50);        
            return;        
        }        
        // no errors, fire        
        init();        
    })();        
    // trying to always fire before onload        
    d.onreadystatechange = function() {        
        if (d.readyState == 'complete') {        
            d.onreadystatechange = null;        
            init();        
        }        
    };        
}

這個函數是Diego Perini在07年就發布了這個方法,
而且獲得了廣泛認同,以至于現在許多開源框架都是借鑒這種方法,譬如JQuery中的ready。

如果以后需要用到IE的DomReady,就是他了。

用法:
IEContentLoaded(  document.getElementById("test") , test  );

function test(){  }

JavaScript技術javascript IE中的DOM ready應用技巧,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 仙居县| 泰宁县| 海丰县| 洪雅县| 德化县| 临猗县| 崇仁县| 临夏县| 佛坪县| 搜索| 峨山| 旅游| 噶尔县| 淮阳县| 泗洪县| 都兰县| 全南县| 成都市| 陇西县| 溧水县| 当涂县| 重庆市| 四子王旗| 马鞍山市| 临沧市| 隆回县| 冀州市| 白玉县| 潜山县| 沙雅县| 桂林市| 长泰县| 读书| 驻马店市| 青铜峡市| 浑源县| 遂溪县| 彩票| 兰溪市| 淮滨县| 耿马|