javascript - 动态添加的 Javascript 不会重新加载

标签 javascript

我有一个动态添加了 Javascript 文件的网页。 更改脚本后(像这样添加 allert 或 smth)我重新加载页面,并按下触发按钮以添加脚本,但浏览器使用旧的(chached)。 在 chrome 和 IE 中试过。 其他脚本(不是动态添加的)可以很好地重新加载。

这是加载脚本的函数:

function addScript (s)
{
    script = document.createElement('script');
    script.type = 'text/javascript';
    script.src = s;
    document.getElementsByTagName('head')[0].appendChild(script);
    script.onload=function () 
    {
        switch (s)
        {
            case 'some address':
                 functionInTheNewFile(); break; 
            default: break; 
        }
    };
}

这里有什么问题吗?

最佳答案

如果是外部脚本缓存,则在脚本末尾追加当前日期和时间。即:

var nowDate = new Date();
script.src = s + "?nocache=" + nowDate.getTime();

关于javascript - 动态添加的 Javascript 不会重新加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5090172/

相关文章:

javascript - 使用从 api 下载的数据在阵列上创建代理对象

javascript - 无法设置 null 的属性 'innerHTML',卡住

javascript - 我如何用js检查asp.net中 "DropDownList"的值?

javascript - 无法使用 jquery 删除 CSS `position` 属性

javascript - InputRichText - 如何使用 Icefaces InputRichText?

javascript - jQuery Sortable 无法与 Twitter 嵌入推文一起使用

JavaScript unixtime 问题

javascript - Java 脚本的 Snort 规则不起作用

javascript - ColdFusion/Javascript 转义单引号

javascript - 单元测试注入(inject)依赖关系,如 angularJS 中的服务 Controller