jQuery选择器jQuery(“element”)和$(“element”)之间有什么区别?

时间:2011-07-07 08:47:52

标签: jquery jquery-selectors

我很多次使用过jQuery,但总是这样使用:$(document)。最近我见过很多次使用jQuery(document)的人,我不知道它们之间的区别,我认为它们是相同的。

但我现在有很难的问题。您知道大多数jQuery插件都使用$(document)方法。现在我有一个使用jQuery(document)必须使用插件。我必须包含它,但在包含后我不能再使用$(document)方法和使用它的插件。

我该如何解决?

2 个答案:

答案 0 :(得分:1)

$只是全局jQuery对象的简短引用

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

大多数插件作者确保美元符号确实引用了jQuery对象,将其置于自调用方法中。

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

通过使用jQuery对象作为参数调用该匿名方法,我们可以通过$在方法中访问它。

答案 1 :(得分:0)

@jAndy provides a good explanation about $ and jQuery in general

但是对于您的具体问题,似乎该插件以某种方式使$不可用,这或者意味着它用其他东西覆盖$(不太可能)或者它调用jQuery.noConflict()

如果是,请查看为什么它正在执行此操作。也许它包含了另一个需要$来完成自己工作的库。

通常,插件永远不要假设$可用于他们。如果只有$可用,@ jAndy会展示如何使用jQuery

此外,如果您将所有自己的代码放在ready处理程序中,则传递的第一个参数是全局jQuery对象,因此您可以根据需要命名参数:

jQuery(function($) {
    // your code here
});