|
Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » [решено] getElementById на ИЕ |
|
[решено] getElementById на ИЕ
|
Ветеран Сообщения: 908 |
Добрый!
Долго сегодня думал над проблемой, возникшей в приложенном файле. При вводе в текстовое поле в div подгружается автозаполнение (аля яндекс). В опере все работает. Проблема в том, что IE при вводе данных в поле (то есть вызове события обработки нажатия клавиш), пишет, что "Предполагается наличие объекта". Почитал, что ИЕ некорректно работает функция getElementById, через которую я пытаюсь обратиться к слою. как можно сделать этот вариант рабочим и в ИЕ? |
|
Отправлено: 17:35, 15-02-2010 |
Кот Ти Сообщения: 7318
|
Профиль | Отправить PM | Цитировать Надо сказать, что и в Опере оно не работает. Вы забыли приложить файл, который указан в этой строке:
Впрочем, это неважно. Если заменить функцию из того файла на alert(), то всё так, как вы описываете. В IE не работает из-за того, что в строке пропущена запятая: Посмотрите внимательно - между 39 и 40 надо поставить. После этого и в IE работает. |
Последний раз редактировалось Coutty, 15-02-2010 в 18:00. Отправлено: 17:43, 15-02-2010 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 908
|
Профиль | Отправить PM | Цитировать Точно! Спасибо! Полдня потратил на выискивание ошибки! А все потому что нет нормального редактора для JS, который показал хотя бы где ошибка. Может, посоветуете какой?
кстати, теперь всплыла проблема с кодировкой, которая возвращается с текстом по ajax. Текст в квадратиках. В сторону php скрипта использовал encodeURIComponent и iconv, а вот обратно... script.js я забыл расписать - там просто функции для ajax. |
Отправлено: 21:15, 15-02-2010 | #3 |
Кот Ти Сообщения: 7318
|
Профиль | Отправить PM | Цитировать И какую же кодировку используете в Аяксе? Попробуйте Юникод.
Собственно, в каком виде оно возвращается? var js; function include_js(file) { var html_doc = document.getElementsByTagName('head')[0]; js = document.createElement('script'); js.setAttribute('type', 'text/javascript'); js.setAttribute('src', file); html_doc.appendChild(js); js.onreadystatechange = function () { if (js.readyState == 'complete') { // здесь вызов какой-то функции по обработке данных } } js.onload = function () { // здесь вызов той же функции, что и чуть выше - это для совместимости с отдельными браузерами. Наверное, можно и объединить в одном условии через "или", иначе приходится проверять - не повторно ли обрабатываем те же данные. } return false; } var brick = 52; var mapTitle = "Уровень 2"; var descript = "Второй уровень"; map = [ [1,1,1,1,1,1,1,0,0,0], [1,4,4,4,4,4,1,0,0,0], [1,4,4,4,4,4,1,1,1,1], [1,2,2,2,2,2,1,2,2,1], [1,2,2,2,2,2,1,3,2,1], [0,1,1,1,1,1,1,1,1,1] ]; Оба файла у меня в UTF кодируются - проблем не возникало. Редактор использую - Notepad++. Он, правда, не выполняет функций по обнаружению ошибок, но хоть синтаксис подсвечивает. Основные ошибки Опера находит, а что-то приходится долго вылавливать через консоль IE ![]() |
Отправлено: 18:29, 16-02-2010 | #4 |
Ветеран Сообщения: 908
|
Профиль | Отправить PM | Цитировать Спасибо!
|
|
Отправлено: 18:44, 18-02-2010 | #5 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
|