【问题标题】:setting src of html <script> in javascript在javascript中设置html <script>的src
【发布时间】:2014-01-27 01:44:34
【问题描述】:

我正在尝试使用以下方法设置脚本标签的 src 属性:

document.getElementById("setScript").setAttribute("src","adventures/" + setting + ".js");

“setScript”显然是脚本标签的id,而设置变量是改变脚本的参数。我测试以确保 src 确实被设置,使用:

alert(document.getElementById("setScript").getAttribute("src"));

打印出冒险/[无论参数是什么].js。当我在 html 的 src 值中准确键入该值时,它将调用该函数。但是当它在javascript中改变时,它不会。有谁知道为什么会这样?

提前致谢

【问题讨论】:

    标签: javascript html src


    【解决方案1】:

    为了加载一个新的 javascript 文件,您必须创建一个带有 src 集的新脚本元素,然后将其添加到 html,例如将其附加到 head 元素

    var script = document.createElement("script");
    script.src = "/somescript.js";
    
    var head = document.getElementsByName("head")[0];
    head.appendChild(script);
    

    【讨论】:

    • 说得有道理,谢谢,我没想过要这样做。
    【解决方案2】:

    只是在黑暗中拍摄,但我会假设只有在将元素添加到页面时才会加载脚本。

    尝试类似:

    var scr = document.getElementById('setScript');
    scr.parentNode.removeChild(scr);
    scr.src = "adventures/"+setting+".js";
    document.body.appendChild(scr);
    

    如果失败,那么您将需要创建一个新的脚本元素,设置 源,然后附加它。

    【讨论】:

    • 那个剂量似乎也有效,但还是谢谢。
    猜你喜欢
    • 1970-01-01
    • 2012-08-24
    • 2015-06-07
    • 1970-01-01
    • 2015-12-25
    • 1970-01-01
    • 2021-11-23
    • 1970-01-01
    相关资源
    最近更新 更多