$和$$有什么区别?

我一直在经历一些jQueryfunction。

请问任何人可以告诉我使用$$$之间的区别是什么?

在jQuery文档中没有$$语句。 jQuery有一个带$字符的默认选择器。 也许这个脚本使用另一个javascript库并且与jQuery有一些冲突。 在这种情况下,您可以使用jquery.NoConflict来避免此类问题,并设置另一个jquery选择器。

就像是:

 var s = jQuery.noConflict(); // something with new jQuery selector s("div p").hide(); // something with another library's using $() $("content").style.display = 'none'; 

如果你的代码有一些想要避免冲突的东西: var $$ = jquery.noConfict(); ,你可以使用$$作为jquery选择器: $$("#element").method();

有关文档的更多信息,请访问: http : //api.jquery.com/jQuery.noConflict/

$$$将在chrome,FF和safari浏览器上的任何网页上工作(如果还没有包含jQuery),其中$返回选择器传递的第一个元素,这里$document.querySelector ,而$$返回元素数组,如document.querySelectorAll 。 它们是chrome和Firefox浏览器的原生function,你可以在safari中看到$$$定义。

在任何chrome,firefox或safari中打开Wordpress ,并打开开发人员控制台来检查这些结果……(为什么是wordpress,因为他们不会使用jQuery或Moo工具)

 $('div') returns first div in DOM $$('div') returns all div in DOM 

你可以在这里查看

jQuery是jQuery提供的对象。 $是另一个,它只是jQuery的别名。

$$不是由jQuery提供的。 它由其他库提供,例如Mootools或Prototype.js。

更重要的是, $$也作为document.querySelectorAll的别名在现代浏览器的控制台中提供。 除非它被另一个图书馆覆盖。 $也以相同的方式提供,作为document.querySelector的别名。

有关更多信息,请参阅此答案 。

看看jQuery源代码 ,它没有定义$$$$不是jQuery的一部分,你必须把它与其他东西混淆。

$ AND $$是mootools选择器,$也是jquery选择器。

请参阅jquery noconflict-mode

所有jQueryfunction都封装在jQuery对象中,该对象也可以作为$访问。 您正在检查的代码可能正在使用不同的库(例如Mootools),它使用$$函数。

$$在Jquery中没有重要意义,但它在原型框架中使用。

原型$$

还要检查这不是使用noConflict分配的以前版本的Jquery。

搜索var $$的代码以查找旧的jquery版本的可能分配。

 var $$ = jquery.noConfict(); 

Short Anser: $$ 没有在jQuery规范中定义,另外单个$( ) – 符号的表示法意味着你将括号中的东西封装到jQuery对象中。

因此,别名$是一个缩写 – 我使用的是jQuery库,其中double $$没有在标准的jQuery库中定义。