replace requirejs-domready with a (self-made) HTML5 idiom, #51
This commit removes yet another dependency. The provided domready function is compatible with IE9, Firefox and Safari/Chrome. Inspired by: * http://stackoverflow.com/a/15580098 * https://github.com/requirejs/domReady/blob/master/domReady.jspull/63/merge
parent
cfbf595605
commit
1c3c826ada
@ -0,0 +1,28 @@
|
||||
define(function() {
|
||||
|
||||
"use strict";
|
||||
|
||||
var loaded = false;
|
||||
var once = function(callback) {
|
||||
if (! loaded) {
|
||||
loaded = true;
|
||||
callback();
|
||||
}
|
||||
};
|
||||
|
||||
var domready = function(callback) {
|
||||
|
||||
// HTML5 standard to listen for dom readiness
|
||||
document.addEventListener('DOMContentLoaded', function() {
|
||||
once(callback);
|
||||
});
|
||||
|
||||
// if dom is already ready, just run callback
|
||||
if (document.readyState === "interactive" || document.readyState === "complete" ) {
|
||||
once(callback);
|
||||
}
|
||||
};
|
||||
|
||||
return domready;
|
||||
|
||||
});
|
Loading…
Reference in new issue