我的网站上有一副图片,是以背景图片的形式加上去的,而且是CSS调用的方式。<link href="x.css" rel="stylesheet" type="text/css"> .x{background:url(1.jpg)}, 这幅图片呢,每天都要更新的,但是由于IE缓存,实际上在IE浏览器上它并不显示更新(除非按ctrl+F5),在其他浏览器上浏览时正常。上次发过类似的帖子,ID为lsw645645645的兄弟给出个方法,就是用JS给图片地址加上随机数,但是我发现这样还是不行,因为IE缓存的太厉害了,它把x.css和1.jpg全都缓存了,下次即使我换成2.jpg,IE还是会顺着缓存的x.css到缓存里找1.jpg,并显示1.jpg. 我想要是能给这个x.css加上随机数就好了,IE调用新的x.css,应该就会更新图片。可惜我不会具体的代码,也不知道这个思路对不对,CSDN高手如云,一定有人知道,谢谢大家了!
try {
document.execCommand('BackgroundImageCache', false, true);
} catch(e) {}
是要求IE缓存图片,既然你是要它缓存图片,试试更改后面的 true.
本答复未作测试.
.x{background:url(1.jpg?s=201106200938)}
<html>
<head>
<link id="css" rel="Stylesheet" type="text/css"/>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.6.1.min.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$('#css').attr({ href: 'css.css?' + Math.random() * 1000 + ')' });
});
</script>
</head>
<body>
<div id="img">背景图片</div>
</body>
</html>