一:通过meta标签。不知道是什么原因 我自己用不得行;
<meta http-equiv=”Expires” CONTENT=”0″>
<meta http-equiv=”Cache-Control” CONTENT=”no-cache”>
<meta http-equiv=”Pragma” CONTENT=”no-cache”>
二:加版本号
<link href="~/Css/Style.css?v=1.0" rel="stylesheet" />
三:每次更新修改文件名。
第一次
<link href="~/Css/Style1.css" rel="stylesheet" />
第二次
<link href="~/Css/Style2.css" rel="stylesheet" />
四:通过添加一个随机数或者时间戳来防止缓存
1、
function getCssLinkTag(cssUrl) {
var link = document.createElement("link");
link.type = "text/css";
link.rel = "stylesheet";
link.href = cssUrl;
return link;
}
function loadCss(cssUrl) {
// 添加一个随机数或者时间戳来防止缓存
var cssLink = getCssLinkTag(cssUrl + "?t=" + new Date().getTime());
document.getElementsByTagName("head")[0].appendChild(cssLink);
}
window.onload = function(){
loadCss("CSS/Style.css");
}
2、
function loadFile(str) {//str:"css/style.css" 或者 "js/jquery.js"
let head = document.getElementsByTagName("head")[0];
str += "?time=" + new Date().getTime()
if (str) {
let substr = str.substring(str.length - 3)
if (substr === 'css') {
let link = document.createElement("link");
link.type = 'text/css';
link.rel = 'stylesheet';
link.href = str;
head.appendChild(link);
}
else if (substr === '.js') {
let script = document.createElement("script");
script.type = "text/javascript";
script.src = str;
head.appendChild(script);
}
else
console.log("传入错误")
}
}
说明:1和2差不多的 ,一个包括js和css,一个只有css,1可以替换成js的这里就不贴了。
3、用Razor标记语法,直接设置时间或者随机数
<link rel="stylesheet" href="~/Css/common.css?v=@DateTime.Now">