让浏览器不加载缓存CSS和JS的方法

现在大多数浏览器都会缓存网站上的图片、CSS 和 JS 文件,以提高加载速度。当你的网站修改 CSS 和 JS 的时候往往因为缓存的原因无法立刻生效。

这样旧的 CSS 和新的 Html 就可能会导致错误,这里有个小技巧,可以保证浏览器不会缓存 CSS 和 JS,只需要在文件结尾随便加点参数即可,这样浏览器就会认为这是不同的文件。

 代码如下 复制代码

<link rel="stylesheet" type="text/css" href="/style.css?ver=123" />

如果用 PHP 把现在的时间作为版本号,这样每次都会重新加载:

 代码如下 复制代码

<link rel="stylesheet" type="text/css" href="/style.css?ver=<?php echo time(); ?> " />

当然这样做会付出代价,完全打破浏览器的缓存机制,导致每次都会重新加载相同的 CSS 和 JS

最好的解决方案应该是只有在 CSS 和 JS 文件被修改的时候才会重新加载。这里要介绍一个 PHP 的 filemtime() 函数,filemtime() 函数可以返回文件最后被修改的时间,这样只有在修改文件的时候版本才会变化。

 代码如下 复制代码

<?php $css = '/style.css' ?>
<link rel="stylesheet" type="text/css" href="?ver=<?php echo $css . filemtime( $css ); ?>" />

WordPress

如果你使用 WordPress,可以通过 WordPress 提供的脚本排队机制挂载脚本:

 代码如下 复制代码

$css = get_stylesheet_directory() . '/css/style.css';
wp_enqueue_style( 'style', $css, NULL, filemtime( $css ) );

时间: 2024-07-30 10:30:51

让浏览器不加载缓存CSS和JS的方法的相关文章

jquery实现不同大小浏览器使用不同的css样式表的方法

 这篇文章主要介绍了jquery实现不同大小浏览器使用不同的css样式表的方法,需要的朋友可以参考下 该方法支持IE浏览器和其他浏览器.   1.首先定义两个link,当然你也可以是一个,第二个是要更改的css  代码如下: <link rel="stylesheet" type="text/css" href="main.css" /> <link id="size-stylesheet" rel=&quo

jquery实现不同大小浏览器使用不同的css样式表的方法_jquery

该方法支持IE浏览器和其他浏览器. 1.首先定义两个link,当然你也可以是一个,第二个是要更改的css 复制代码 代码如下: <link rel="stylesheet" type="text/css" href="main.css" /><link id="size-stylesheet" rel="stylesheet" type="text/css" href=

动态加载外部css或js文件

原理解析:第一步:使用dom创建<script>或者<link>标签,并给他们附加属性,如type等第二步:使用appendChild方法把标签绑定到另一个标签,一般是绑到<head>. 应用:1.提高代码的复用,减少代码量:2.添加一个javascript控制器和 session可以实现动态改变页面样式:3.由于是页面是从上到下依次加载文件的,并且边加载边解释,所以可以添加javascript控制器控制页面文件的加载顺序,如先加载css布局文件,再显示有图片的css美

FCKeditor编辑器在IE11浏览器不加载不显示问题解决办法

FCKeditor编辑器不兼容IE11,在IE11里此编辑器不显示,令ZBlog和dedecms等使用此编辑器的建站系统首当其冲,我们应该怎样解决这个问题呢?本文将分享一下本人的解决方法. 不同于网上流传的更改文件代码的复杂做法,本人仅通过设置IE11的两个地方便可轻松解决这个问题. 1.兼容性视图设置 打开兼容性视图设置,然后添加你的网站域名.如下图: 兼容性视图设置 添加网站 2.设置IE11的User Agent 首先,关闭IE11.0浏览器.(在任务管理器看有无"iexplorer&qu

WordPress让浏览器自动加载最新的CSS、JS文件(免刷新缓存)

在开发WordPress 主题的时候,如果频繁更新主题的CSS.JS文件但主题已经上线,如何让访客的浏览器获取最新的CSS.JS文件而非等到浏览器删除缓存后?下面就介绍一个简单的方法. 版本号参数 相信有过开发经验的童鞋都知道是用版本号参数控制.即原来比如说css 文件路径代码是如下面的: http://xxx.com/wp-content/themes/Devework/style.css 那么如果更新了css 文件,可以为此添加版本号,即改为: http://xxx.com/wp-conte

【HTML】通过不同的分辨率调用不同的css,两种方法:css本身判断、js调用css

通过百度发现很多的方法,不过每个方法用起来都不太好,css 直接判断的话,需要写很多,而如果,两套的话,书写起来就很方便,我个人采用了js这种方法,很有层次感. 下方这种方法是来自网络上http://www.divcss5.com/jiqiao/j662.shtml  (是这个内容,不过不是这个网站复制的.)   css: <style> .abc{  height:300px;  border:1px solid #000;  margin:0 auto; }  /* 设置了浏览器宽度不小于

30多个CSS和JS下拉菜单资源

导航菜单是网站设计中最重要的 因素之一.网络开发人员可以使用CSS创建方便用户的横向或纵向导航菜单, 而JavaScript则使人们有可能创造更多的互动,更多的响应和更灵活的导航到任何网站.Noupe在这篇文章里面提出了25个以上(横向和纵向)多 层次的下拉菜单,包括使用了JavaScript和CSS ,你可以将这些示例和教程用你的未来网站设计计划.帕兰照常为你翻译, 你也可以查看帕兰映像之前发表的一些关于菜单应用的文章: IzzyMenu: 在线创建DHTML/CSS菜单 9款CSS菜单生成器

Android图片加载缓存框架Glide_Android

Glide开源框架是Google推荐的图片加载和缓框架,其在Github上的开源地址是:https://github.com/bumptech/glide 当然一个Google推荐的框架肯定就是Volley啦. 目前Android主流开发工具是AndroidStudio,在AndroidStudio如何使用Glide,https://github.com/bumptech/glide上有详细的介绍说明. 因为刚换新工作不久,公司和的还是Eclipse,所以学习Glide我暂时还用的Eclipse

两种手机浏览器判断跳转WAP网站JS文件

这里我们只需要用简单的JS判断就可以实现跳转,下面2个方法是老蒋以前有用过的,有需要的朋友可以参考加入到网站中使用.   第一种:    代码如下 复制代码 function uaredirect(murl){ try { if(document.getElementById("bdmark") != null){ return; } var urlhash = window.location.hash; if (!urlhash.match("fromapp"))