JS 動態載入指令碼的4種方法

2021-06-26 05:29:13 字數 1044 閱讀 9532

有時候我們需要動態的加入適合的js,因為有時候不需要將所有的js都載入進來,以來提高效率,但這種方法比較適合單個js檔案比較大的情況

如果js檔案都比較小,還是乙個js好,這樣可以減少連線數。下面是4種比較常用的方法,大家可以根據情況選擇,最後指令碼之家 將會給推薦乙個。

1、直接document.write 

複製**

**如下:

2、動態改變已有script的src屬性

複製**

**如下:

3、動態建立script元素

複製**

**如下:

這三種方法都是非同步執行的,也就是說,在載入這些指令碼的同時,主頁面的指令碼繼續執行,如果用以上的方法,那下面的**將得不到預期的效果。 

要動態載入的js指令碼:a.js,以下是該檔案的內容 

複製**

**如下:

var str = "中國"; 

alert( "這是a.js中的變數:" + str ); 

主頁面**: 

複製**

**如下:

上述**執行後 a.js 的 alert 執行並彈出訊息, 

但是 主頁面產生了錯誤,沒有彈出對話方塊。原因是 'str' 未定義,為什麼呢?因為主頁面在取 str 的時候 a.js 並沒有完全載入成功。遇到需要同步執行指令碼的時候,可以用下面的第四種方法。 

4、原理:用xmlhttp取得要指令碼的內容,再建立 script 物件。

注意:a.js必須用utf8編碼儲存,要不會出錯。因為伺服器與xml使用utf8編碼傳送資料。 

主頁面**: 

複製**

**如下:

現在完成了乙個js指令碼的動態載入。 

複製**

**如下:

var rash=true; 

var msg=""; 

function norash()   

function ra****()   

function getrss()   

} ra****(); 

注意文字加粗的地方,大家可以情況選擇。

動態載入JS指令碼的4種方法

要實現動態載入js指令碼有4種方法 1 直接document.write 2 動態改變已有script的src屬性 3 動態建立script元素 這三種方法都是非同步執行的,也就是說,在載入這些指令碼的同時,主頁面的指令碼繼續執行,如果用以上的方法,那下面的 將得不到預期的效果。要動態載入的js指令...

動態載入JS指令碼的4種方法

要實現動態載入js指令碼有4種方法 1 直接document.write 2 動態改變已有script的src屬性 3 動態建立script元素 這三種方法都是非同步執行的,也就是說,在載入這些指令碼的同時,主頁面的指令碼繼續執行,如果用以上的方法,那下面的 將得不到預期的效果。要動態載入的js指令...

動態載入JS指令碼的4種方法

要實現動態載入js指令碼有4種方法 1 直接document.write 2 動態改變已有script的src屬性 3 動態建立script元素 這三種方法都是非同步執行的,也就是說,在載入這些指令碼的同時,主頁面的指令碼繼續執行,如果用以上的方法,那下面的 將得不到預期的效果。要動態載入的js指令...