JQuery setInterval没有在Firefox,Internet Explorer上更新

时间:2013-07-10 21:49:01

标签: jquery setinterval

我在Internet Explorer和Firefox上遇到以下代码问题。它在Safari和Chrome中正常运行。

问题是它会刷新ONCE,然后再也不会刷新。

<img class="cameras" src="http://www.redlodge.com/webcam_rlm/netcam.jpg&t=">

<script type="text/javascript">    

  function updateCamera() {
    time = new Date().getTime();
    $('.cameras').each(function() {
      var url = $(this).attr('src').replace(/&t=\d*/, '&s='+time);
      $(this).attr('src', url);
    })
  }

$(document).ready(function() {
    setInterval(updateCamera, 2000);
});

</script>

我研究和研究,并认为这是由于太多的要求。是这样的吗?我以为我用“setInterval”来阻止它。

1 个答案:

答案 0 :(得分:1)

首先它是&t=time,然后它是&s=time,您需要决定使用哪一个,截至目前只有第一个空&t=time被替换,而不是其他开头的&s=* <img class="cameras" src="http://www.redlodge.com/webcam_rlm/netcam.jpg?s=">

function updateCamera() {
    var time = new Date().getTime();
    $('.cameras').each(function() {
      this.src = this.src.replace(/\?s=\d*/, '?s='+time);
    })
}

和JS

{{1}}

并且查询字符串应以?开头,而不是&amp ;,否则它根本不会起作用。

FIDDLE