getElementById не работает в IE, если не указан атрибут NAME (Javascript, HTML5 и Internet Explorer) - PullRequest
0 голосов
/ 31 декабря 2010

У меня проблема с переключением изображения JavaScript, не работающим в Internet Explorer, если я не указал атрибут NAME в теге.Другая проблема заключается в том, что когда я это сделаю, валидатор HTML5 выдаст сообщение «NAME attr устарело, используйте вместо него ID», что я и использую с getElementById.

Должен ли я в любом случае указывать атрибут NAMEи игнорировать сообщения об ошибках или есть обходной путь?Я не хочу добавлять дополнительные атрибуты, если у меня их тоже нет.

Спасибо

Адам

Ответы [ 2 ]

3 голосов
/ 31 декабря 2010

Вы не звоните getElementById; ты пишешь document[img_name].
Не.

2 голосов
/ 31 декабря 2010

Убедитесь, что у вас нет повторяющихся идентификаторов. getElementById неправильно получает name="" в определенных IE, если нет элемента с идентификатором.

Кроме того, убедитесь, что документ не находится в режиме причуд и находится в стандартном режиме. alert( document.compatMode ) и убедитесь, что это не BackCompat. Если это так, используйте правильный doctype и убейте комментарии / пробелы перед doctype.

...