"Слетает" onclick.
На страничке при помощи innerHTML() динамически рисуется список HTML-элементов и ,динамически же, каждому из них назначается обработчик события:
var lis = wrap.getElementsByTagName('li'); for(var i=0; i<lis.length; i++){ lis[i].firstChild.onclick = function(){ //firstChild - это <span> такой (вроде кнопки) appendNewListHere(); }; } appendNewListHere() - рисует ещё один список внутрь текущего (получается список в списке). Проблема в том, что когда вставляется внутренний список, то "слетает" обработчик "onclick" для элемента, который только что отрисовал вложенный список. Мысль (почему это происходит): быть может это связано с тем, что поменялось DOM-дерево. Почему это происходит на самом деле? |
Цитата:
|
Цитата:
oldHTML.innerHTML = oldHTML.innerHTML + newListHTML; т.е. вместе с новым (внутренним) списком перерисовывается ещё и кнопка на которой висел "onclick". Спасибо большое! |
Часовой пояс GMT +3, время: 02:20. |