|
<script language='Javascript' type='text/Javascript' src='?.js'></script>
2、body.onload事件之后加載文件(這里我稱之為動態加載文件)的時候,瀏覽器會先查找緩存文件,如果緩存文件不存在才會向服務器發出http請求;所以本人提倡動態加載文件,而在body.onload事件之前的靜態加載文件應該做到精短。
3、本系統程序按照功能模塊劃分為單個文件,在/source/js/system.js中實現運行時按需下載,而不是恐怖的一次性下載所有腳本程序代碼,減少網絡帶寬的占用。
4、為了讓js代碼跨網站調用時不會出現編碼問題,程序中所有漢字用函數escape編碼,如果只是單網站使用,您可以把編碼改回漢字。
5、所有函數或類注明為“本網站自用”的,很可能與本網站后臺自定義的數據類型有關,您可以將它刪除。
下面是/js/Load.js程序以及的注釋說明:
復制代碼 代碼如下:
var IsBody={};
//定義動態加載js程序文件的代碼
eval("IsBody.AppendJs="+(IsBody.AppendJsCode="function(){var A=(typeof(arguments[0])=='string'?arguments:arguments[0]);for(var i=A.length-1;i>=0;i--){var J=document.createElement('script');J.language='Javascript';J.type='text/Javascript';J.src=A[i];document.getElementsByTagName('head')[0].appendChild(J);}};"));
//測試document.body是否已經加載
IsBody.Try=function()
{
if(document.body&&((this.IsIE=(document.readyState!=null))?document.readyState.toLowerCase()=='complete':true))
{ //document.body加載后判斷瀏覽器是IE還是FoxFire,本程序目前支持這兩種瀏覽器
clearTimeout(this.Interval);
if(typeof(LoadCssFile)!='undefined')
{ //動態加載css文件,目的也是減少服務器的http請求(注意這里LoadCssFile是個數組)
var C=LoadCssFile,j=C.length,i=1;
while(i<j)
{
var J=document.createElement('link');J.rel='stylesheet';J.type='text/css';J.href=C[i++];document.getElementsByTagName('head')[0].appendChild(J);
}
}
//動態加載圖片,目的也是減少服務器的http請求
if(typeof(LoadImage)!='undefined') this.AppendJs('/source/js/LoadImage.js');
//動態加載程序主體系統
this.AppendJs('/source/js/System.js');
}
};
IsBody.Interval=setInterval('IsBody.Try();',100);
JavaScript技術:javascript引導程序,轉載需保留來源!
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。