addEventListener (), когда идентификатор не указан - PullRequest
0 голосов
/ 24 января 2011

это для вызова каждого из верхнего меню

var arrayTop=document.getElementById("topmenu").getElementsByTagName("a");
for (i=0;i<arrayTop.length;i++){
  document.getElementById(arrayTop[i].id).addEventListener("click",topMenu,false);
}

HTML

<div id="topmenu">
  <a id="help" href=#><span>Help</span></a>
  <a id="frum" href=#><span>Forum</span></a>
  <a id="home" href=#><span>Home</span></a>
</div>

но как применить addEventListener (), когда идентификатор не указан? поскольку некоторые элементы будут иметь одинаковый идентификатор. поэтому я изменю атрибут id на

<div id="topmenu">
  <a mnuid="help" href=#><span>Help</span></a>
  <a mnuid="frum" href=#><span>Forum</span></a>
  <a mnuid="home" href=#><span>Home</span></a>
</div>

1 Ответ

8 голосов
/ 24 января 2011

Вам не нужен идентификатор.У вас уже есть элементы от звонка до getElementsByTagName.

var arrayTop = document.getElementById("topmenu").getElementsByTagName("a");
for (var i = 0; i < arrayTop.length; i++)
{
    arrayTop[i].addEventListener("click",topMenu,false);
}
...