Что может привести к поломке селектора JQuery? - PullRequest
1 голос
/ 23 января 2009

Я пытаюсь получить элемент с помощью селектора JQuery, но он не находит его, даже если этот элемент действительно существует. Более того, я могу найти элемент, используя getElementById.

Например:

$ ('# outputDiv') дает мне нулевое значение. Но document.getElementById ("outputDiv") возвращает мне Div, к которому я пытался получить доступ.

Есть идеи?

Ответы [ 3 ]

3 голосов
/ 23 января 2009

Убедитесь, что jQuery действительно загружен. Вы тестировали с Firebug или другим отладчиком? Сообщается ли об ошибках JavaScript? Вы используете другую библиотеку, которая использует $ как псевдоним?

2 голосов
/ 23 января 2009

Вы используете другие библиотеки, которые могут перегружать $? Я знаю это, например этот прототип делает это.

Возможно, вы захотите попробовать запустить jQuery ('# outputDiv'), чтобы увидеть, действительно ли вы вызываете jQuery.

0 голосов
/ 23 января 2009

Если вы используете IE7, порядок того, когда что-то происходит, очень важен, и селекторы не работают для динамически генерируемого контента, если сценарий jQuery объявлен заранее, то есть в элементе head.

Мы смогли обойти это, поместив код в конец документа. Как бы странно это ни звучало, это задокументировано MS как ошибка, существовавшая много лет.

...