0

我有很多选择器,我需要在脚本中多次操作它们。

到目前为止,我已经这样做了:

var allSelectors3 = $('#icon20,#icon21,#icon22,#icon23,#icon24,#icon25,#icon26,#icon27,#icon28,#icon29,#icon30,#icon31,#icon32');
var allSelectors2 = $('#icon12,#icon13,#icon14,#icon15,#icon16,#icon17,#icon18,#icon19'); 
var allSelectors = $('#icon2,#icon3,#icon4,#icon5,#icon6,#icon7,#icon8,#icon9,#icon10,#icon11');

$(allSelectors).show();
$(allSelectors2, allSelectors3).hide();

这是最好的方法吗?

4

2 回答 2

3

不,不需要第二个$()

var allSelectors = $('#icon20,#icon21,#icon22,#icon23,#icon24,#icon25,#icon26,#icon27,#icon28,#icon29,#icon30,#icon31,#icon32');
allSelectors.show()

结合 2 个列表使用.add

allSelectors2.add(allSelectors3).hide();
于 2012-11-29T13:50:16.670 回答
0

由于没有人提到jQuery 性能规则,这里是性能规则

在变量中声明选择器很好(如果你有大量的选择器),我看到你做对了。

另一种选择是为 Selectors1 中的每个元素添加一个类class="selector1",依此类推。然后使用:

$(".Selectors").show();
$(".Selectors2").hide();
$(".Selectors3").hide();

这看起来很漂亮,但是当您阅读性能规则时,按类和其他属性进行选择比较慢。

也不需要第二个 $()。直接使用这个:

var allSelectors3 = $('#icon20,#icon21,#icon22,#icon23,#icon24,#icon25,#icon26,#icon27,#icon28,#icon29,#icon30,#icon31,#icon32');
var allSelectors2 = $('#icon12,#icon13,#icon14,#icon15,#icon16,#icon17,#icon18,#icon19'); 
var allSelectors = $('#icon2,#icon3,#icon4,#icon5,#icon6,#icon7,#icon8,#icon9,#icon10,#icon11');

allSelectors.show();
allSelectors2.hide();
allSelectors3.hide();
于 2012-11-29T13:55:45.103 回答