我正在尝试调试某人的代码,并且遇到了这个问题:
$$$.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库,我们在大部分代码中使用单个美元符号。
你能用简单的英语解释三元钞的完成情况吗?
答案 0 :(得分:7)
它只是jQuery
对象的别名,就像$
一样。这都是......
可以手动或使用jQuery.noConflict()
示例:
var $$$ = jQuery.noConflict();
var bla = jQuery.noConflict();
现在,$$$
和bla
都是jQuery
对象的别名。
许多JavaScript库使用$作为函数或变量名,就像jQuery一样。在jQuery的情况下,$只是jQuery的别名,因此所有功能都可以在不使用$的情况下使用。如果我们需要在jQuery旁边使用另一个JavaScript库,我们可以通过调用$ .noConflict()将$的控制权返回给另一个库:
修改以反映您的修改:
虽然我只看到一小部分代码,但$$$.fn = $$$.prototype
似乎很愚蠢,因为jQuery.fn
是jQuery.prototype
的别名......
来自源代码:
jQuery.fn = jQuery.prototype
答案 1 :(得分:3)
$$$
只是一个[其他] JavaScript标识符。
jQuery定义的属性$$$
不是,但可能有人这样做了:
$$$ = jQuery.noConflict();
也许是为了避免从另一个库覆盖$
。虽然我发现它非常可怕,并且会选择在封闭中将$
绑定到jQuery
:
;(function myStuff ($, evil$) {
// do stuff with $ (jQuery) and "the other $"
})(jQuery, $) // <-- keep us real