Селектор jQuery В чем разница между jQuery («элемент») и $ («элемент»)? - PullRequest
1 голос
/ 07 июля 2011

Я использовал jQuery много раз назад, но всегда использовал так: $(document).В последнее время я много раз видел, как кто-то использовал jQuery(document), я не знаю разницы между ними, я думал, что они одинаковые.

Но у меня сейчас очень тяжелая проблема.Вы знаете, что большинство плагинов jQuery использует метод $(document).Теперь у меня есть один должен использовать плагин, который использует jQuery(document).Я должен включить это, но после включения я больше не могу использовать $(document) метод и плагины, которые его используют.

Как я могу решить это?

Ответы [ 2 ]

1 голос
/ 07 июля 2011

$ - это просто короткая ссылка на глобальный jQuery объект.

window.$ === window.jQuery // true

Большинство авторов плагинов удостоверяются, что знак доллара действительно ссылается на объект jQuery, помещая его в самопризывающийся метод.

(function( $ ) {
    // $(document)
}( jQuery ));

Вызывая этот анонимный метод с объектом jQuery в качестве аргумента, мы можем получить к нему доступ внутри метода через $.

0 голосов
/ 07 июля 2011

@ jAndy дает хорошее объяснение о $ и jQuery в целом .

Однако для вашей конкретной проблемы кажется, что плагин каким-то образом делает $ недоступным, что означает либо перезапись $ чем-то другим (маловероятным), либо вызов jQuery.noConflict().

Если это так, взгляните , почему делает это. Возможно, он включает в себя другую библиотеку, для работы которой требуется $.

Обычно плагины никогда не должны предполагать, что для них доступно $. @jAndy показал, как использовать $, если доступно только jQuery.

Кроме того, если вы поместите весь свой собственный код в обработчик ready, первым переданным аргументом будет глобальный jQuery объект, поэтому вы можете присвоить параметру любое имя:

jQuery(function($) {
    // your code here
}); 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...