很多网站中都会使用<script language="javascript" type="text/javascript" src="JS文件路径"></script>来包含要使用的JS的文件,使用JS与HTML代码分开,同样CSS样式也使用包含的方法,将样式文件引用到要使用的页面文件中,一般使用<link href="CSS样式表文件路径" rel="stylesheet" type="text/css" />,这些基本知识,做过网站的人都了解,这是最基础的知识。
不过今天我所要说的不是这些东西,而是关于样式表以及JS文件缓存的问题,CSS样式表以及JS文件都是属于客户端可以直接访问的文件,一般都会被缓存到浏览器的缓存中,以便下次再次访问,不需要从服务器再次加载,但是这同样给开发人员带来一个问题,就是当更新样式表,JS文件,或者图片文件时(文件名不变)浏览器会因为缓存导致页面没有变化。当然现在很多缓存的模式可以通过程序设置,也可以通过浏览器设置,现在是当浏览器有缓存的时候,不清除浏览器缓存如何让客户端自动更新文件呢?其实很简单,浏览器判断缓存的方式就是根据文件名以及参数来判断的,如果文件名和参数名相同则使用缓存不从服务器加载,所以只需要加文件名后加个随机参数就可 了,这个方法可以适合所有的页面缓存。
如原来的<link href="/index.css" rel="stylesheet" type="text/css" />可以改为<link href="/index.css?201307011200" rel="stylesheet" type="text/css" /> ?后面的就是参数,JS以及图片文件也可以用同样的方法,至于后面的随机参数怎么生成,可以根据你自己的方法来定,一般是使用随机数,或者当前的日期时间来做为参数。
不过今天我所要说的不是这些东西,而是关于样式表以及JS文件缓存的问题,CSS样式表以及JS文件都是属于客户端可以直接访问的文件,一般都会被缓存到浏览器的缓存中,以便下次再次访问,不需要从服务器再次加载,但是这同样给开发人员带来一个问题,就是当更新样式表,JS文件,或者图片文件时(文件名不变)浏览器会因为缓存导致页面没有变化。当然现在很多缓存的模式可以通过程序设置,也可以通过浏览器设置,现在是当浏览器有缓存的时候,不清除浏览器缓存如何让客户端自动更新文件呢?其实很简单,浏览器判断缓存的方式就是根据文件名以及参数来判断的,如果文件名和参数名相同则使用缓存不从服务器加载,所以只需要加文件名后加个随机参数就可 了,这个方法可以适合所有的页面缓存。
如原来的<link href="/index.css" rel="stylesheet" type="text/css" />可以改为<link href="/index.css?201307011200" rel="stylesheet" type="text/css" /> ?后面的就是参数,JS以及图片文件也可以用同样的方法,至于后面的随机参数怎么生成,可以根据你自己的方法来定,一般是使用随机数,或者当前的日期时间来做为参数。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
· 零经验选手,Compose 一天开发一款小游戏!