Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 04.04.2013, 22:45
Новичок на форуме
Отправить личное сообщение для molnij Посмотреть профиль Найти все сообщения от molnij
 
Регистрация: 04.04.2013
Сообщений: 9

проблема с onClick в IE 10
Добрый день
Есть работающая система. У пользователей с автообновлением пришел IE 10 и обнаружился странный баг.
Симптомы: при клике на элементах перестали выполнятся все действия.

Элементы (a, div) имеют обработчик onClick. С разными функциями внутри. Бряки поставленные внутри функций показывают, что до них поток даже не доходит.
Дополнительно усложняющие ситуацию симптомы:
У меня на двух разных машинах под IE 10 все продолжает работать. У ряда пользователей - нет.
На машине где не работает, если в devtools'ах IE в содержимом атрибута onclick исправить что-нибудь, оно начинает работать. Причем исправить можно что угодно: я пробовал добавить пробел между параметрами в вызове функции, точку с запятой в конце и прочие на мой взгляд не меняющие функционала вещи.


Сложилось впечатление, что этим я просто вызываю какую-то переинициализацию внутри браузера и он начинает подхватывать обработчики.

Подскажите что делать или хотя бы в какую сторону рыть? гугление ничего похожего не выдало. Проблемы с onClick в IE у народа встречаются, но в совершенно иных ситуациях
Ответить с цитированием
  #2 (permalink)  
Старый 04.04.2013, 22:51
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Вот вам и еще одна (правда под сомнением) причина не использовать атрибуты для навески обработчиков )
Ответить с цитированием
  #3 (permalink)  
Старый 05.04.2013, 01:17
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

Сообщение от molnij
гугление ничего похожего не выдало.
странно что не выдало сообщение: НЕ ВЕШАЙ ОБРАБОТЧИКИ ЧЕРЕЗ АТРИБУТЫ!!!
Используйте нормальный способ кодирования, JS отдельно, HTML отдельно. Зачем совать все воедино, это же говнокод.
__________________
хм Russians say завтра but завтра doesn't mean "tomorrow" it just means "not today."
HTML5 history API рассширение для браузеров не поддерживающих pushState, replaceState
QSA CSS3 Selector Engine
Ответить с цитированием
  #4 (permalink)  
Старый 05.04.2013, 09:31
Новичок на форуме
Отправить личное сообщение для molnij Посмотреть профиль Найти все сообщения от molnij
 
Регистрация: 04.04.2013
Сообщений: 9

Сообщение от devote Посмотреть сообщение
странно что не выдало сообщение: НЕ ВЕШАЙ ОБРАБОТЧИКИ ЧЕРЕЗ АТРИБУТЫ!!!
Используйте нормальный способ кодирования, JS отдельно, HTML отдельно. Зачем совать все воедино, это же говнокод.
Я в JS новичок и за бурей эмоций не очень понял, что именно вы рекомендуете?
Кстати гугл по "НЕ ВЕШАЙ ОБРАБОТЧИКИ ЧЕРЕЗ АТРИБУТЫ" не выдает ничего особо впечатляющего. Первая же ссылка ведет на http://javascript.ru/tutorial/events/intro, где написано, что варианты с document.getElementById('myElement').onclick = function() {} и атрибутом эквивалентны.
А учитывая, что в системе весь код генерируется, видимо автору было проще вешать обработчики по месту проживания элемента. И в чем-то я его могу понять.

ну и в целом хотелось бы понять, если код валидный, почему он не выполняется, а если нет - почему он выполняется
Ответить с цитированием
  #5 (permalink)  
Старый 05.04.2013, 12:20
х.з
Посмотреть профиль Найти все сообщения от dmitriymar
 
Регистрация: 21.11.2010
Сообщений: 4,588

Сообщение от molnij
ну и в целом хотелось бы понять, если код валидный, почему он не выполняется, а если нет - почему он выполняется
НЕ ВЕШАЙ ОБРАБОТЧИКИ ЧЕРЕЗ АТРИБУТЫ!!!
Ответить с цитированием
  #6 (permalink)  
Старый 05.04.2013, 12:28
Аватар для cyber
I am Student
Отправить личное сообщение для cyber Посмотреть профиль Найти все сообщения от cyber
 
Регистрация: 17.12.2011
Сообщений: 4,415

От ие будет хоть какаето польза , если не буду вешать обработчик через атрибут...
__________________
Цитата:
Если ограничения и условия описываются как "коробка", то хитрость в том что бы найти именно коробку... Не думайте о чем то глобальном - найдите коробку.
Ответить с цитированием
  #7 (permalink)  
Старый 05.04.2013, 13:44
Новичок на форуме
Отправить личное сообщение для molnij Посмотреть профиль Найти все сообщения от molnij
 
Регистрация: 04.04.2013
Сообщений: 9

Я искренне надеюсь, что не попал на местный флешмоб и еще раз прошу пояснить почему? Гугл по прежнему не в курсе этой фразы.
Ответить с цитированием
  #8 (permalink)  
Старый 05.04.2013, 13:49
Профессор
Отправить личное сообщение для nikita.mmf Посмотреть профиль Найти все сообщения от nikita.mmf
 
Регистрация: 01.02.2010
Сообщений: 364

DOM: свойства VS атрибуты
Ответить с цитированием
  #9 (permalink)  
Старый 05.04.2013, 13:55
Аватар для cyber
I am Student
Отправить личное сообщение для cyber Посмотреть профиль Найти все сообщения от cyber
 
Регистрация: 17.12.2011
Сообщений: 4,415

molnij, как минимум когда читаешь такой код хочется по лицу дать.
Прочитайте эту статью http://learn.javascript.ru/introduction-browser-events
nikita.mmf, и причем тут свойства или в данном топике речь идет о событиях и почему лучше использовать свойство.
__________________
Цитата:
Если ограничения и условия описываются как "коробка", то хитрость в том что бы найти именно коробку... Не думайте о чем то глобальном - найдите коробку.
Ответить с цитированием
  #10 (permalink)  
Старый 05.04.2013, 14:11
х.з
Посмотреть профиль Найти все сообщения от dmitriymar
 
Регистрация: 21.11.2010
Сообщений: 4,588

Сообщение от molnij
Я искренне надеюсь, что не попал на местный флешмоб и еще раз прошу пояснить почему? Гугл по прежнему не в курсе этой фразы.
А гугл не даёт ответа разве , что это была самая первая модель навески обработчиков , какой лет и лет ?
http://ru.wikipedia.org/wiki/JavaScript
http://ru.wikipedia.org/wiki/Document_Object_Model
И вполне логично не переносить устаревшее морально ?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с onclick Bubble Общие вопросы Javascript 2 25.08.2012 15:51
Проблема с onclick sitebuilder Общие вопросы Javascript 3 18.06.2012 11:31
Проблема с обработкой OnClick suslik90 Events/DOM/Window 1 11.05.2012 21:09
Проблема с onclick Teledrug Events/DOM/Window 2 19.05.2010 07:52
Проблема с onclick Reflexion Events/DOM/Window 9 25.10.2009 22:54