让html页面不缓存js的实现方法
2023-09-11 14:19:23 时间
很多朋友都会碰到这样的情况:如果我们页面加载了js的话下次打开时也会是调用这个js缓存文件,但对于我们调试时是非常的不方便了,本文就来谈论如何解决这一问题,下面一起来看看。
不缓存JS的方法其实挺简单,CSS在某种条件下也可以如此使用;
先让大家了解下不缓存的一个简单的原理:
当浏览不同Url时,浏览器会自动将当前访问的地址进行一次缓存;而第二次访问时着调用缓存下来的页面,从而达到页面快速加载(页面加载优化)的目的;
因此,我们可以给页面后面设定个不同的值,让页面保持没错访问的不同即可达到不缓存的目的了!
下面是个简单的示例:
<script>
document.write("<script type='text/javascript' src='/js/test.js?"+Math.random();+"'></script>");
</script>
document.write("<script type='text/javascript' src='/js/test.js?"+Math.random();+"'></script>");
</script>
其他的类似,只需在地址后加上+Math.random()
注意:因为Math.random() 只能在Javascript 下起作用,故只能通过Javascript的调用才可以
最后加一个ajax也不让缓存的方法
xmlHttp.open("GET", "ajax.asp?now=" + new Date().getTime(), true);
记得后面的now=" + new Date().getTime()是重点,需要带参数的。
可以考虑引入js部分给js文件加入一个随机数作为参数.
比如:
1
2
3
4
|
<script type= "text/javascript" src= "/js/myjs.js" ></script> // 修改为 <script type= "text/javascript" src= "/js/myjs.js?randomId=<%=Math.random()%>" ></script> |
注: 只是给个思路. 后面那个randomId=<%=Math.random()%>需要你自己考虑下.
可以是当前时间戳+一个随机数字之类的.
相关文章
- JS框架_(Qrcode.js)将你的内容转换成二维码格式
- 2 —— js语法 —— 对象和方法的声明 。变量提升。闭包
- Javascript之旅——第七站:说说js的调试
- Js基础知识7-JavaScript所有内置对象属性和方法汇总
- js 函数的传值问题
- 【JS基础回顾】Array对象及其常用属性以及方法
- gulp 图片、样式、js、实时刷新等压缩gulpfile.js文件各个模块
- js中数组的splice()方法
- js 传递方法
- 深入理解node.js的module.export 和 export方法的区别
- [Node.js] Level 2 new. Event
- [JS]如何理解JS中的类和对象
- 15 个常见的 Node.js 面试问题及答案
- Atitit。Js调用后台语言 java c# php swing android swt的方法大总结
- Atitit.js模块化 atiImport 的新特性javascript import
- Atititjs javascript异常处理机制与java异常的转换.js exception process
- atitit. js 跨界面 页面 web cs 传值方法总结
- 如何为部署到 SAP BTP 平台上的 Node.js 应用提供Authorization 和 Trust 管理 - 权限管控
- js 轮播图
- js 浏览器兼容css中webkit、Moz、O、ms...写法封装(es6语法)
- js - 封装文本域自适应高度
- css+js 实现一行多个盒子块元素响应式布局
- js实现 once 方法
- (三十七)js改变this指向的方法
- JS工具方法 3 js客户端与php服务器通信加密之AES