用js修改網頁中的js檔案

万金流發表於2024-10-25

目的:修改script標籤的src屬性,並生效。

操作:刪除原有script,新增新的。

細節:如果僅修改原有script標籤的src屬性,瀏覽器並不載入新的js檔案。

程式碼:

function f1() {
    // 獲取 <head> 標籤
    let head = document.head;
    let myjs;

    // 移除 id 為 s2 的標籤
    var scriptToRemove = document.querySelector('#s2');
    if (scriptToRemove) {
        head.removeChild(scriptToRemove);
    }

    // 準備標籤的 src 屬性
    str = scriptToRemove.src.split('/');
    myjs = str[str.length - 1].trim();
    if (myjs == "j1.js") {
        myjs = "js/j2.js";
    }
    else {
        myjs = "js/j1.js";
    }
    console.log(myjs);

    // 建立新的 <script> 標籤
    let newScript = document.createElement('script');
    newScript.id = 's2';
    newScript.src = myjs;

    // 將新的 <script> 標籤新增到 <head> 的最後
    head.appendChild(newScript);
}

相關文章