为什么不会有任何版本的IE处理这个Javascript?

时间:2011-01-31 01:42:33

标签: javascript jquery internet-explorer attributes

这是代码,更改jQUERY插件的背景图片,适用于Chrome,IF,Safari甚至我的两部智能手机。但不是IE。有人能发现问题吗?

<script type="text/javascript">
$(document).ready(function() {
$("#supersized img").attr({ 
          src: "images/bg2.jpg",
        });
    $("#supersized").attr($("img"));
});
</script>

3 个答案:

答案 0 :(得分:8)

IE对其对象字面形成非常严格。很多时候,它不喜欢你在最后一个属性后放一个逗号。所以在这个例子中,你的src属性之后的逗号将给IE适合,最臭名昭着的IE 6&amp; 7

$("#supersized img").attr({ 
          src: "images/bg2.jpg"  //<-- notice no comma after property value because it's the last one.
        });
    $("#supersized").attr($("img"));
});

答案 1 :(得分:1)

对象文字中有一个尾随逗号。这总是会导致IE浏览器出错。

答案 2 :(得分:-1)

这个问题不仅与Internet Explorer有关,因为我注意到Firefox只会在没有警告的情况下执行它。对象键假设在您的情况下使用单引号或双引号正确转义的原因

{ 'src': "images/bg2.jpg" } 

并在图像路径后删除昏迷。