[Tips] 网间流传的Document.ready实现

 

网间流传的Document.ready实现,没有JQuery的时候可以拿来一用:

// Document.ready
(function () {
    var ie = !!(window.attachEvent && !window.opera);
    var wk = /webkit\/(\d+)/i.test(navigator.userAgent) && (RegExp.$1 < 525);
    var fn = [];
    var run = function () { for (var i = 0; i < fn.length; i++) fn[i](); };
    var d = document;
    d.ready = function (f) {
    if (!ie && !wk && d.addEventListener)
        return d.addEventListener('DOMContentLoaded', f, false);
    if (fn.push(f) > 1) return;
    if (ie)
        (function () {
            try { d.documentElement.doScroll('left'); run(); }
            catch (err) { setTimeout(arguments.callee, 0); }
        })();
    else if (wk)
        var t = setInterval(function () {
            if (/^(loaded|complete)$/.test(d.readyState))
                clearInterval(t), run();
        }, 0);
  };
})();

 

posted on 2013-03-13 07:54  飘行天下  阅读(185)  评论(0编辑  收藏  举报

导航