我一直在尝试一些jQuery功能。
任何人都可以告诉我使用$
和$$
之间的区别吗?
答案 0 :(得分:6)
在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();
答案 1 :(得分:6)
$
和$$
适用于Google Chrome,Firefox和Safari浏览器中的任何网页(如果还没有包含jQuery),其中$
会返回传递的第一个选择元素。< / p>
下面,
$是document.querySelector
$$是document.querySelectorAll
它们是Google Chrome和Firefox浏览器的原生功能,您也可以在Safari中看到$
和$$
定义。
在任何Google Chrome,Firefox或Safari中打开Google,然后打开开发人员工具查看这些结果...(为什么选择Google,因为他们不会使用jQuery或Moo工具)
$('div'); // returns first DIV in DOM
$$('div'); // returns all DIVs in DOM
答案 2 :(得分:4)
jQuery
是jQuery提供的对象。 $
是另一个,它只是jQuery
的别名。
$$
。它由其他库提供,例如Mootools或Prototype.js。
更重要的是,$$
也在现代浏览器的控制台中作为document.querySelectorAll
的别名提供。除非它被另一个图书馆覆盖。 $
也以相同的方式提供,作为document.querySelector
的别名。
有关详细信息,请参阅this answer。
答案 3 :(得分:1)
$ AND $$是mootools选择器,$也是jquery选择器。
参见jquery noconflict-mode
答案 4 :(得分:1)
简短的Anser: $$
在jQuery规范中定义为 NOT ,此外,单$( )
- 符号的表示法意味着您将内容封装在内括号到jQuery对象。
因此,别名$
是一个缩写 - 我使用的是jQuery库,其中double $$
未在标准jQuery库中定义。
答案 5 :(得分:1)
所有jQuery功能都封装在jQuery
对象中,该对象也可以$
访问。您正在检查的代码可能正在使用不同的库(例如Mootools),它使用$$
函数。
答案 6 :(得分:1)
$$在Jquery中没有重要意义,但它在原型框架中使用。
同时检查这不是使用noConflict
分配的以前版本的Jquery。
搜索var $$
的代码,找到旧版jquery版本的可能分配。
var $$ = jquery.noConfict();