我正在尝试将选择器设置为全局变量或命名空间。我不确定这是否是正确的术语,或者我是否正确接近它。
我希望能够做到以下几点......
$.namespaceA = $('#myFirstDiv');
$.namespaceB = $('#mySecondDiv');
function myFirstFunction(){
$.namespaceA.hide();
$.namespaceB.css();
}
function mySecondFunction(){
$.namespaceB.show();
}
这是我想要如何使用它们的一个非常基本的例子。基本上,最终目标是设置一组可以通过多种功能轻松使用的全局选择器。我不知道这是否正确,或者这是否理想,这就是我要问的原因。提前谢谢。
答案 0 :(得分:1)
为什么不简单地制作全局变量? (他们可以毫无问题地保存jQuery包装集)
// When creating variables holding wrapped sets it is common naming to have
// a $ following it (I find this rather annoying, since you can't easily double click
// on the var, in order to copy/paste it etc, so I always use _ underscore (personal preference)
var _div1 = $('#myFirstDiv'); // you will see a lot of people do div1$
var _div2 = $('#mySecondDiv'); // or div2$ (signifying the jQuery wrapped set)
_div2.hide();
//These could be used within multiple functions etc... No need for namespaces here!
function Whatever () {
console.log(_div1);
_div1.css('background', '#000');
}
$('#linkTrigger').on('click', function () {
Whatever();
_div2.fadeIn();
});
$.nameSpaceHere
更适用于您尝试-extend-jQuery并添加自己的某种实用功能。
答案 1 :(得分:1)
与mcpDESIGNS类似:
<div id="myFirstDiv">first</div>
<div id="mySecondDiv">second</div>
var namespaceA = $('#myFirstDiv');
var namespaceB = $('#mySecondDiv');
$("#myFirstDiv").click(function() {
namespaceA.hide();
});
$("#mySecondDiv").click(function() {
namespaceA.show();
});
答案 2 :(得分:1)
您可以在没有“var”关键字的情况下声明全局变量。
div = $('#myFirstDiv');
我们可以在它作为全局变量的任何函数中声明变量。