【JS】html中引入js文件不同步更新内容

问题来由:最近在更新网站页面的时候,测试发现更新js文件时,引用js文件的Html内容没有随着改变。

问题产生原因:

1、如果用户之前已经访问过该网页,那么浏览器就会缓存该网页的css、js;

2、在这些css、js缓存未过期之前,浏览器只会从缓存中读取css、js;

3、如果在服务器上更新的网页修改了css、js,那么这些修改在用户的浏览器中是不会有变化的,只会从缓存中读取之前的css、js。

解决一(不推荐:局限性,手动清除浏览器缓存):

用户手动清空浏览器的缓存。浏览器就会重新向服务器获取css、js文件,新的文件便会生效。

解决二(推荐):

当你更新网页之后,你不能让每个用户都清理一遍缓存吧,于是便从代码的角度去解决这个问题,在css、js文件的引用路径后面添加一个版本号,更新了哪个文件就更改哪个文件的版本号(可以是数字、日期)就可以了,这样浏览器就会把这个文件当做新的文件重新向服务器获取资源。

更新前: 

<script src="/form.js"></script>

更新后:

<script src="/form.js?v=2.0"></script>

每次更新下v后面的数字就可以啦!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值