如何将时间戳添加到< script>脚本文件中标记网址以避免缓存 [英] How to append timestamp to the java script file in <script> tag url to avoid caching
问题描述
我想在JavaScript文件源路径末尾附加一个随机数或时间戳,以便每次页面重新加载时都应该下载一个新副本。
<它应该像
< script type =text / javascriptsrc =/ js / 1.js? v = 1234455\" />
我如何生成并追加这个数字?这是一个简单的HTML页面,因此无法使用任何PHP或JSP相关的代码。
方法1可以通过这种方式添加大量扩展,包括异步包含和脚本推迟。
< script type =text / javascript>
(function(){
var randomh = Math.random();
var e = document.getElementsByTagName(script)[0];
var d = document。 createElement(script);
d.src =//site.com/js.js?x=\"+randomh+;
d.type =text / javascript;
d.async = true;
d.defer = true;
e.parentNode.insertBefore(d,e);
})();
< / script>
方法2(AJZane的评论) $ b
小而坚固的包容性。您可以准确地看到JavaScript被触发的位置,并且与方法1相比,它的定制性更差(至点)。
< script> document.write(< script type ='text / javascript'src ='// site.com
/js.js?v=+ Date.now()+'>< \ /脚本>中);< /脚本>
I want to append a random number or a timestamp at the end of the javascript file source path in so that every time the page reloads it should download a fresh copy.
it should be like
<script type="text/javascript" src="/js/1.js?v=1234455"/>
How can i generate and append this number? This is a simple HTML page, so cant use any PHP or JSP related code
Method 1
Lots of extensions can be added this way including Asynchronous inclusion and script deferring. Lots of ad networks and hi traffic sites use this approach.
<script type="text/javascript">
(function(){
var randomh=Math.random();
var e = document.getElementsByTagName("script")[0];
var d = document.createElement("script");
d.src = "//site.com/js.js?x="+randomh+"";
d.type = "text/javascript";
d.async = true;
d.defer = true;
e.parentNode.insertBefore(d,e);
})();
</script>
Method 2 (AJZane's comment)
Small and robust inclusion. You can see exactly where JavaScript is fired and it is less customisable (to the point) than Method 1.
<script>document.write("<script type='text/javascript' src='//site.com
/js.js?v=" + Date.now() + "'><\/script>");</script>
这篇关于如何将时间戳添加到< script>脚本文件中标记网址以避免缓存的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!