lowellk
8/20/2010 - 11:08 PM

gistfile1.js

// async script loading a la souders

TWHIST.loadScript = function(url, onload) {
        var domscript = TWHIST.window.document.createElement('script');
        domscript.src = url;
        if ( onload ) {
                domscript.onloadDone = false;
                domscript.onload = function() { 
                        if ( !domscript.onloadDone ) {
                                domscript.onloadDone = true; 
                                onload(); 
                        }
                };
                domscript.onreadystatechange = function() {
                        if ( ( "loaded" === domscript.readyState || "complete" === domscript.readyState ) && !domscript.onloadDone ) {
                                domscript.onloadDone = true;
                                domscript.onload();
                        }
                }
        }
        TWHIST.window.document.getElementsByTagName('head')[0].appendChild(domscript);
};