javascript中動態載入js、vbs指令碼或者css樣式表

來源:互聯網
上載者:User

目錄:DynamicLoad類簡介、屬性、方法、事件、樣本、下載。

DynamicLoad類簡介

     本文將為您介紹一個在javascript中可以動態載入js、vbs指令碼和css樣式表的DynamicLoad類DynamicLoad,載入原理分為3步:(1)使用document.createElement建立一個指令碼或者樣式表對象(以下稱對象o);(2)設定對象o的屬性;(3)將對象添加到document中去。使用DynamicLoad類,您可以方便的判斷是否已經載入了指令碼,動態載入指令碼等操作。

DynamicLoad類中的屬性

     Self——對象自身(該屬性為設計時使用,程式中請盡量避免使用該屬性。)

DynamicLoad類中的方法

     Load(src)——載入指定的檔案。如果載入成功,引發OnLoaded事件;如果載入失敗,引發OnFailed事件。您可以通過重載回呼函數LoadedCallback和FailedCallback來執行載入對應的操作。
     IsLoaded(src)——判斷指定的檔案是否已經載入完畢。
     GetSrcType(src)——得到檔案類型(即副檔名)
     LoadedCallback(src)——檔案載入成功後執行的回呼函數。請重載該方法,以處理負載檔案成功之後的操作。
     FailedCallback(src)——檔案載入失敗後執行的回呼函數。請重載該方法,以處理負載檔案失敗之後的操作。

DynamicLoad類中的事件

     OnLoaded(src)——檔案載入成功事件。
     OnFailed(src)——檔案載入失敗事件。

樣本:

下面的樣本示範了如何判斷檔案是否已經被載入,以及如何動態負載檔案。

 

<html>
<body>
 <script language="javascript" type="text/javascript" src="DynamicLoad.js"></script>
 <script language="javascript" type="text/javascript">
 <!--
 var dl=new DynamicLoad();    //初始化DynamicLoad對象
 alert(dl.IsLoaded("DynamicLoad.js")); //判斷是否已經載入了檔案DynamicLoad.js
 dl.Load("HttpCookie.js");    //載入HttpCookie.js
 alert(dl.IsLoaded("HttpCookie.js")); //判斷是否已經載入了檔案HttpCookie.js。載入需要時間,一般情況下這裡返回false;如果過一小段時間再判斷,很可能返回true。
 //-->
 </script>
</body>
</html>

 

下載:
下載DunamicLoad

致謝:

本文參考了以下文章,感謝其作者的辛勤勞動。
《動態載入js檔案的一個類》 水木無痕 http://hi.baidu.com/smvv21/blog/item/50156c0ef644bdcb7bcbe195.html
《動態載入外部css或js檔案》 ddcat http://homepage.yesky.com/45/7728545.shtml
《JavaScript使用物件導向的技術建立進階 Web 應用程式》 Ray Djajadinata http://msdn.microsoft.com/zh-cn/magazine/cc163419.aspx

 

謝謝您看完本文,希望對您有所協助。

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.