2017-03-16 66 views
0

当我通过JavaScript注入Javascript <script> -tag。在下载过程中,所有浏览器会自动附加查询参数_(下划线)以及当前时间戳。这不是一个好的行为,因为浏览器不能再缓存脚本。浏览器将下划线附加到动态加载的JS

如:

对于<script src="/dyn/generated.js"/>所有浏览器加载/dyn/generated.js?_=1489660571375

是否有办法防止这种情况,所以浏览器不缓存我的JS文件?


解决方案(感谢Jaromanda)

追加脚本JavaScript函数自身。不要使用jQuery! 切换到本地函数后,下划线消失了。

var scriptTag = document.createElement("script"); 
    scriptTag.type = "text/javascript"; 
    scriptTag.src = "http://*.js"; 
    document.head.appendChild(scriptTag); 
+1

我的浏览器都没有这样做脚本标签...你使用一些jQuery的东西创建这些标签也许?因为您在问题中使用了“动态”一词,所以我假设脚本标记是动态生成的 - 并且大多数numpties都使用jQuery作为该 –

+0

谢谢,它工作正常! –

回答

0

解决方案(感谢Jaromanda)

追加脚本JavaScript函数自身。不要使用jQuery! 切换到本地函数后,下划线消失了。

var scriptTag = document.createElement("script"); 
    scriptTag.type = "text/javascript"; 
    scriptTag.src = "http://*.js"; 
    document.head.appendChild(scriptTag);