2010-02-10 3 views
0

Я пытаюсь динамически устанавливать содержимое DIV на моей странице, а затем вызвать метод Jquery, аля:Почему DOM-селектор jQuery не может найти мой элемент?

document.all("menu").innerHtml = menuHtml; 
$('ul.sf-menu').superfish(); 

Однако $('ul.sf-menu') часть выше не может найти какие-либо элементы (menuHtml делает определенно contian <ul /> с классом sf-menu)

Я очень новичок в JQuery, и я изо всех сил, чтобы понять, почему это не может найти свой новый добавленный элемент. Это потому, что он был динамически добавлен в DOM, или это то, что jquery не ищет «везде»?

ответ

2

Почему бы вам не сделать все это в запросе ...

$('#menu').html(menuHtml); 
$('ul.sf-menu', menuHtml).superfish(); 
+0

'$ ('# menu')' также ничего не найдено - не знаю почему, 'document.all (" menu ")' отлично работает. – Justin

+0

Aaaah - извините, я все верну, '$ ('# menu')' находит мой элемент - с помощью jquery, чтобы установить содержимое, успешно обновляет DOM и означает, что следующее утверждение работает нормально - спасибо. – Justin

0

ваш код, завернутый в документе, готовом событии?

$(document).ready(function() { 
    // put all your jQuery goodness in here. 
}); 
+0

Нет, его на HTTPReadyStateChange запроса xmlHttp, хотя и имеет значение. – Justin

Смежные вопросы