// multiple browser compatible and deoesnt load same script twice.
var filesadded = ""
function loadJSQueue(array, success) {
if (array.length != 0) {
if (filesadded.indexOf("[" + array[0] + "]") == -1) {
filesadded += "[" + array[0] + "]" //List of files added in the form "[filename1],[filename2],etc"
var callbackCalled = false;
oHead = document.getElementsByTagName("head")[0] || document.documentElement;
var oScript = document.createElement('script');
oScript.type = 'text/javascript';
oScript.src = array[0];
array.shift(); // $(oScript).ready(function () { // // }) // oScript.onload = oScript.onreadystatechange = function () { // if (!this.readyState || this.readyState == 'complete') { // // loadJSQueue(array, success); // } // };
var done = false;
// Attach handlers for all browsers
oScript.onload = oScript.onreadystatechange = function () {
if (!done && (!this.readyState ||
this.readyState === "loaded" || this.readyState === "complete")) {
done = true;
// jQuery.handleSuccess(null, xhr, status, data); // jQuery.handleComplete(null, xhr, status, data);
// Handle memory leak in IE
oScript.onload = oScript.onreadystatechange = null;
if (oHead && oScript.parentNode) {
oHead.removeChild(oScript);
}
loadJSQueue(array, success);
}
};
oHead.insertBefore(oScript, oHead.firstChild);
}
else {
array.shift();
loadJSQueue(array, success);
}
}
else {
success();
}
}
// usage:
loadJSQueue(["../../JavaScript/plupload/js/jquery.plupload.queue/jquery.plupload.queue.js",
"../../JavaScript/plupload/js/plupload.js",
"../../JavaScript/plupload/js/plupload.html4.js",
"../../JavaScript/plupload/js/plupload.html5.js"
], function () {
//do your after load stuff here
})