Почему никакая версия IE не будет обрабатывать этот Javascript? - PullRequest
0 голосов
/ 31 января 2011

Это код, меняющий фоновое изображение для плагина jQ, отлично работает на Chrome, FF, Safari и даже на двух моих смартфонах.Но не IE.Кто-нибудь может определить проблему?

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

Ответы [ 3 ]

8 голосов
/ 31 января 2011

IE очень строг по своему объектному буквальному образованию. Много раз вам не нравится ставить запятую после последнего свойства. Таким образом, в этом случае запятая после вашего свойства src будет соответствовать IE, наиболее печально известен IE 6 & 7

$("#supersized img").attr({ 
          src: "images/bg2.jpg"  //<-- notice no comma after property value because it's the last one.
        });
    $("#supersized").attr($("img"));
});
1 голос
/ 31 января 2011

В вашем объектном литерале есть запятая. Это всегда вызывает ошибку в браузерах IE.

0 голосов
/ 31 января 2011

Эта проблема связана не только с Internet Explorer, так как я замечаю, что только Firefox будет выполнять ее без предупреждений.Причина, по которой ключи объекта предполагают правильное экранирование с одинарными или двойными кавычками в вашем случае

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

, а также удаление запятой после пути к изображению.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...