什么是jquery中的三元美元符号?
我正在尝试调试某人的代码,并遇到了这个问题:
$$$.ajax({ url: ajax_url + param, context: $("#formDialog"), success: function(data) { this.html(data); BindPopupFormEvents(this, title, reload); } }, $$$.ajax.PARTAIL_UPDATE, $mainWrapper);
我们正在使用jquery库,但我以前从未见过三元标志,我不知道它是什么……有什么建议吗?
编辑
我后来发现了这个:
$$$.fn = $$$.prototype = { init: function(jQuery, test) {}, CONST: CONST };
我们只使用jquery库,我们在大多数代码中使用单个美元符号。
你能用简单的英语解释三重美元符号的成就吗,拜托?
它只是jQuery
对象的别名,就像$
一样。 就这样…
可以手工完成或使用jQuery.noConflict()
例子:
var $$$ = jQuery.noConflict(); var bla = jQuery.noConflict();
现在$$$
和bla
都是jQuery
对象的别名。
许多JavaScript库使用$作为函数或变量名,就像jQuery一样。 在jQuery的情况下,$只是jQuery的别名,因此所有function都可以在不使用$的情况下使用。 如果我们需要在jQuery旁边使用另一个JavaScript库,我们可以通过调用$ .noConflict()将$的控制权返回给另一个库:
编辑以反映您的修改:
虽然我只看到了一小部分代码,但是$$$.fn = $$$.prototype
似乎很愚蠢,因为jQuery.fn
是jQuery.prototype
的别名……
从源代码:
jQuery.fn = jQuery.prototype
$$$
只是一个[其他] JavaScript标识符。
属性$$$
不是由jQuery定义的,但可能有人做了类似这样的事情:
$$$ = jQuery.noConflict();
也许是为了避免从另一个库中覆盖$
。 虽然我发现它非常可怕,并且会选择在封闭中将$
绑定到jQuery
:
;(function myStuff ($, evil$) { // do stuff with $ (jQuery) and "the other $" })(jQuery, $) // <-- keep us real