自动刷新图片在IE 9中无效

时间:2014-03-11 08:43:18

标签: javascript html css ajax internet-explorer-9

<!DOCTYPE html>
<html>

<head>
    <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7">
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <link rel="stylesheet" type="text/css" href="test.css">

</head>

<body>

    <img name="img" src="http://4.bp.blogspot.com/-Jdj5JKTA1xQ/T-BzvrQDZhI/AAAAAAAABhs/bX0TUEFb3Ck/s1600/windows-help1.png" width="90%" height="100%">


    <script>
        setInterval(function () {
            var images = document.getElementsByTagName('img'); // get all img DOM objects
            for (var i = 0; i < images.length; i++) {
                images[i].src = images[i].src.replace(/\btime=[^&]*/, 'time=' + new Date().getTime());
            }
        }, 1000);

    </script>
</body>

</html>

在Chrome中我可以看到我的图片每秒刷新一次,但在IE 9中它不起作用。显示一次后它不刷新。我该如何解决这个问题,或者还有其他办法吗?

1 个答案:

答案 0 :(得分:0)

代码应该可以正常工作。也在IE 9中。

尝试这样的方法来验证scr属性实际上是否已更改:

Sample fiddle

JSFiddle在IE 8中不能很好地运行 - 我测试过,但是这应该给你一个可见的IE样本:

Sample fiddle

HTML:

<img src="http://jsfiddle.net/img/initializing.png?time=123" />
<img src="http://jsfiddle.net/img/initializing.png?time=123" />
<br/>
Img0.src: <input type="text" /><br/>
Img1.src: <input type="text" /><br />
Counter : <input type="text" />

CSS:

input {
    width : 500px;
}

使用Javascript:

var img = document.getElementsByTagName('img');
var inp = document.getElementsByTagName('input');
var cnt = 0;

setInterval(function () {
    inp[2].value = ++cnt;
    for (var i = 0; i < img.length; i++) {
        img[i].src = img[i].src
            .replace(/\btime=[^&]*/, 'time=' + new Date().getTime());
        inp[i].value = img[i].src;
    }
}, 1000);