Показать сообщение отдельно
  #1 (permalink)  
Старый 22.06.2008, 22:42
Новичок на форуме
Отправить личное сообщение для Oleg NT Посмотреть профиль Найти все сообщения от Oleg NT
 
Регистрация: 22.06.2008
Сообщений: 4

Как передать элемент в функцию после createElement
В объекте dropdown есть метод:

this.highlightItem = function(item, mode)
{


И в сторонке есть еще один код:

dropdown.LIs[i] = document.createElement('li');
dropdown.LIs[i].onmouseover = 
function() { dropdown.highlightItem(dropdown.LIs[i], 'over'); };
dropdown.ul.appendChild(dropdown.LIs[i]);


Метод .highlightItem сообщает, что аргумент item не определен.

В чем проблема? В том, что после appendChild созданное с помощью document.createElement('li') становится неопределенным? Тогда как решить проблему?


===

на другом форуме посоветовали сначала сделать AppendChild, потом найти элемент через getElementById и назначить функции обработчику событий.

Сделал:

var _el = document.createElement('li');
_el.id = dropdown.title + '_li_' + i;
dropdown.ul.appendChild(_el);
//позже
document.getElementById(dropdown.title + '_li_' + i).onmouseover = 
function() { dropdown.highlightItem(document.getElementById(dropdown.title + '_li_' + i), 'over'); };


Все равно item is null

Как передать объект <li> в метод highlightItem?
Ответить с цитированием