Skip to content

Instantly share code, notes, and snippets.

@nonkr
Created August 23, 2013 02:44
Show Gist options
  • Save nonkr/6315041 to your computer and use it in GitHub Desktop.
Save nonkr/6315041 to your computer and use it in GitHub Desktop.
自己写 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);
}
};
})();
/*
* How to use it
*/
document.ready(function() {
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment