Opera отказывается работать с DOM
Десятая Опера (10.1, 10.5 бета). Отказывается работать с элементами документа вообще. Самый простой код:
element = document.getElementById('id') element.property = value приводит к ошибке. Опера не может сконвертировать element в объект. Самое странное, что document.all работает. Тестирую на локальном сервере, пакет Denwer, на системе Windows Vista. Перелопатил весь интернет, незнаю в чём проблема. Заранее благодарен. |
покажите пример
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <script language="javascript" type="text/javascript" defer="defer"> alert (document.getElementsByTagName("DIV").item(0)); </script> <meta http-equiv="Content-Type" content="text/html; charset=Windows-1251" /> <title>Тестовый заезд</title> </head> <body> <div id="id" style="border:solid 1px black; display:table;">Something</div> </body> </html> alert показывает "null" P.S. Сейчас выяснилось, что и в FF тоже по какой-то причине. |
Все правильно. defer поддерживают не все браузеры, а только IE и новые версии Firefox, поэтому вы ищите элементы до того, как они появляется в документе, соответственно получаете null.
|
DIV еще не существует на момент вызова скрипта
либо разместите код скрипта после DIV-а, либо вызывайте его после события загрузки DOM-а - DOMContentLoad, либо по window.onload |
Блин! Сколько ж я голову поломал над этим! Спасибо приогромнейшее!
|
Часовой пояс GMT +3, время: 20:56. |