Javascript.RU

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

Как поймать событие onclick() не обычным способом?
Здравствуйте

Вопрос у меня следующий:

предположим есть код:
<div>
<ul>

... здесь может быть что угодно

<a href="http://www.domain.com">Click Here</a>

</ul>
</div>

Как поймать событие onclick при клике на ссылку, если между тегами <ul></ul> нельзя менять код?
Ответить с цитированием
  #2 (permalink)  
Старый 29.04.2014, 12:44
Профессор
Отправить личное сообщение для jsnb Посмотреть профиль Найти все сообщения от jsnb
 
Регистрация: 15.03.2014
Сообщений: 561

Так нельзя менять только HTML? Ну так в JS делайте выборку селектором по дочерним ссылкам элемента ul и вешайте на них какие угодно обработчики. Ну или вешать обработчик на сам ul и смотреть откуда пришел клик по target. Только что в этом необычного...

Последний раз редактировалось jsnb, 29.04.2014 в 12:57.
Ответить с цитированием
  #3 (permalink)  
Старый 29.04.2014, 13:41
Интересующийся
Отправить личное сообщение для mrmammoth Посмотреть профиль Найти все сообщения от mrmammoth
 
Регистрация: 19.03.2014
Сообщений: 22

Спасибо, вроде получается

Последний раз редактировалось mrmammoth, 29.04.2014 в 13:50.
Ответить с цитированием
  #4 (permalink)  
Старый 29.04.2014, 13:49
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,105

mrmammoth,
http://learn.javascript.ru/default-b...раузера
Ответить с цитированием
  #5 (permalink)  
Старый 29.04.2014, 14:56
Интересующийся
Отправить личное сообщение для mrmammoth Посмотреть профиль Найти все сообщения от mrmammoth
 
Регистрация: 19.03.2014
Сообщений: 22

Событие поймал, но как определить, что клик был именно по ссылке?
привязаться, кроме как к <a href=>...</a> не к чему. Анализировать innerHTML - так там, между <ul></ul> может быть и 100кб кода. Пробовал через childNodes - но последний элемент к примеру object Text, и как понять что он не просто текст а ссылка?
Ответить с цитированием
  #6 (permalink)  
Старый 29.04.2014, 15:40
Профессор
Отправить личное сообщение для jsnb Посмотреть профиль Найти все сообщения от jsnb
 
Регистрация: 15.03.2014
Сообщений: 561

Сообщение от mrmammoth Посмотреть сообщение
Событие поймал, но как определить, что клик был именно по ссылке?
привязаться, кроме как к <a href=>...</a> не к чему. Анализировать innerHTML - так там, между <ul></ul> может быть и 100кб кода. Пробовал через childNodes - но последний элемент к примеру object Text, и как понять что он не просто текст а ссылка?
Ну смотри у target.tagName, если 'A' то ссылка. А вообще вот: http://learn.javascript.ru/event-delegation
Ответить с цитированием
  #7 (permalink)  
Старый 29.04.2014, 15:50
Интересующийся
Отправить личное сообщение для mrmammoth Посмотреть профиль Найти все сообщения от mrmammoth
 
Регистрация: 19.03.2014
Сообщений: 22

О! Спасибо, теперь точно всё в порядке
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как заставить событие при resize сработать с небольшой задержкой один раз? mitiya Общие вопросы Javascript 3 21.10.2012 20:00
Как вставить в событие, указатель на объект, который получает это событие? Pacan228 Общие вопросы Javascript 2 04.07.2012 19:53
Как в IE динамически установить значение события onClick? Гость Элементы интерфейса 6 16.01.2011 23:46
как проверить поддеружет браузер определенное событие? GOll Элементы интерфейса 9 24.07.2008 14:40
Как вставить событие внутрь document.write Vivasvan Events/DOM/Window 8 13.06.2008 20:02