代码不适用于IE9

时间:2014-02-13 09:13:17

标签: javascript html

为什么以下代码适用于除Internet Explorer之外的所有浏览器?

HTML细分:

<div class="text" id=“contents”>
  <h2 id=“v1”> </h1>
  <h2 id=“v2”> </h1>
</div>

JavaScript的:

var t=[], n=2, abp, rtf;

var fun1 = function() {
     t.push((new Date()).getTime());
    if(t.length > n) 
      done();
    else {
      var img = new Image;
      img.onload = fun1;
      img.src=“images/image5.jpg” + "?id=" + (new Date()).getTime();
    }
}


var done = function () {
  rtf =t[2]-t[1];
  abp =t[1]-t[0]-rtf;

  var text1 = rtf;
  var text2 = Math.abs(abp);


   $(‘#v1’).html(text1);
   $(‘#v2’).html(text2);
}

fun1();

2 个答案:

答案 0 :(得分:3)

这些报价无效:

img.src=“images/image5.jpg”

$(‘#v1’)

根据规范a string literal is defined like this

StringLiteral ::
" DoubleStringCharactersopt "
' SingleStringCharactersopt '

您还有另一个问题:您使用的是Image,但是您可以立即解放它。浏览器可能会取消加载,因为您的脚本无法再显示图像。

我会改变

  var img = new Image;
  img.onload = fun1;
  img.src=“images/image5.jpg” + "?id=" + (new Date()).getTime();

  var img = new Image;
  img.onload = fun1;
  img.src=“images/image5.jpg” + "?id=" + (new Date()).getTime();
  someArray.push(img);

someArray是全局范围内的数组。

答案 1 :(得分:0)

替换"',而不是使用