
正文
引用的js添加版本号,js加版本号后面的参数
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
如何自动给CSS、JS添加版本号?防止客户端缓存。
1、解决办法一:每次修改js或css文件后,都要手工修改那个版本号,注意:是每修改一次(哪怕仅仅是改了一个字符)都要修改版本号;解决办法二:如果嫌手工修改太麻烦,那可以通过程序来自动修改(用随机数做版本号)。
2、最好的解决方案应该是只有在 CSS 和 JS 文件被修改的时候才会重新加载。这里要介绍一个 PHP 的 filemtime() 函数,filemtime() 函数可以返回文件最后被修改的时间,这样只有在修改文件的时候版本才会变化。
3、即可(注意问号不能省)。浏览器是根据网址来缓存的,所以只要给网址接个尾巴,浏览器就会认为是新网址,就会从网上重新下载数据了。当然,如果下次再次改变了网页内容,这个尾巴就要再次修改。
相关问答
Q1: 一个js文件里面给该js文件加上版本号能消除缓存吗
添加版本号:可以在JavaScript文件的URL中添加一个随机字符串或者版本号,每次更新文件时更改该字符串或版本号。
这样更改过JS时,将JS的文件名后边带上个自定义的版本号,再将JS版本号的变量修改一下就好了。其他程序由于是动态的读取JS文件名,所以不用再修改,也不用怕漏改。
您可以在版本控制工具中创建一个代码仓库,并将埋点JS代码添加到该仓库中。然后,您可以使用版本控制工具的分支、标签等功能来管理不同版本的埋点JS代码。
给css和js添加所谓版本号其实也是同一个原理。这个版本号其实就是给css和js的网址接个尾巴而已。这个也同样适用网页里面的图片、音乐等资源,事实上只要是http协议的元素都可以利用这个办法来避开缓存实时刷新。
Q2: 在引用js文件timestamp作用是什么?
1、为了避免缓存引起的最新js无法加载,所以需要用timestamp来表示。在script type=text/javascript src=/js/common.js /script在后面加一个时间戳来解决。
2、浏览器存在缓存,加上时间戳,每次请求时间戳不一样,浏览器就会重新请求,不会从缓存读取。
3、大部分时候是为了清除缓存。jquery.js?date=21132199和jquery.js?date=2391898 对于浏览器来说这是两个不同的文件。
引用的js添加版本号的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于js加版本号后面的参数、引用的js添加版本号的信息别忘了在本站进行查找喔。







