|
Как записать все елементы в массив, чтобы потом применить ко всем сразу событие?
Как записать все элементы в массив (или объект), чтобы потом применить ко всем ним какое-нибудь событие?
Т.е. нужно что-то навроде var masel = []; masel[1] = document.getElementById("id1"); masel[2] = document.getElementById("id2"); masel["onclick"] = function..... |
for (var i = 1, m = masel.length; i < m; i++) { masel[i].onclick = .............. } |
Спасибо за ответ. А сразу ко всем никак нельзя? Получается, что мне в каждом методе необходимо сделать цикл.
|
platedz,
Есть Вариант отслеживания событий на общем родителе, с последующим определением элемена клика |
Цитата:
|
А почему так не выходит?
<div id="id1">id1</div><div id="id2">id2</div> <script> alert(document.getElementById("id1","id2").innerHTML); </script> |
Потому что так сделали
|
Цитата:
|
Спасибо за ответ. Думаю попробовать с помощью elem.querySelectorAll(css). Вроде написано что ie8 он поддерживает, а на более низкие я уже особо не ориентируюсь.
|
Если я правильно понимаю, при делегировании событий идет обход всех дочерних элементов начиная с текущего, пока он не достигнет установленного родителя.
Т.е. чтобы обратиться к любому элементу на странице мне необходимо по идее записывать или document.onclick = function(){и здесь осуществлять проверку на то, произошло ли данное событие на нужном мне элементе} Я верно понимаю. |
Часовой пояс GMT +3, время: 07:33. |
|