Revision: 4297
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at November 23, 2007 06:26 by ChaosKaizer
Initial Code
var regJs = ""; var JitScriptDebug = false; var kaizekuJitScript = { src: function(){ kaizekuJitScript.jitScript(this);}, jitScript: function(src){ var iArray = (src instanceof Array) ? src : src.split(/s*,s*/) ; for (i = 0; m = iArray.length, i < m; i++){ var uri = iArray[i]; if (regJs.indexOf(uri) ==- 1) { var s = document.createElement('script'); s.src = uri; if (s instanceof Object){ try{ document.body.appendChild(s); } catch(e){ document.write('<script type="text/javascript" src="'+uri+'"><\/script>'); } } regJs += uri + "|"; } else { if (JitScriptDebug){ kaizekuJitScript.fireBuglog("Reject duplicated entries: %s",uri); kaizekuJitScript.displayloadedJS(); } } } }, isJsLoad: function(){ var iArray = (this instanceof Array) ? this : this.split(/s*,s*/) ; var d = regJs; for (i = 0; m = iArray.length, i < m; i++){ var n = iArray[i]; var r = (d.indexOf(n) ==- 1) ? false : true; if (JitScriptDebug) kaizekuJitScript.fireBuglog(n + " %s",r); return r; } }, fireBuglog:function(str,ref){ if(typeof console != "undefine") { console.log(str,ref)} }, displayloadedJS:function(display){ var ln = 'Loaded script\n', js = regJs.split("|"); for(var i =0; i < (js.length - 1 ); i++){ var str = '('+(i+1)+') : ' + js[i] + '\n'; ln += str; } ( (display == false ) ? alert(ln) : kaizekuJitScript.fireBuglog("%s",ln) ); } }; Array.prototype.jitScript = kaizekuJitScript.src; String.prototype.jitScript = kaizekuJitScript.src; Array.prototype.isLoadJs = kaizekuJitScript.isJsLoad; String.prototype.isLoadJs = kaizekuJitScript.isJsLoad;
Initial URL
http://blog.kaizeku.com
Initial Description
var lib = ['foo.js','foo.js','foo2.js','foo.js','foo333.js','foo2.js']; var slib = 'fooooo.js'; lib.jitScript(); // append foo.js, foo2.js & foo33.js slib.jitScript(); // append fooooo.js enable firebug console JitScriptDebug = true; validate scripts lib.isJsLoad();
Initial Title
jitScript - safe append javascript with registry handler. prevent duplicated
Initial Tags
javascript, DOM
Initial Language
JavaScript