将选择器组合为jQuery中的变量

时间:2012-05-10 07:19:42

标签: javascript jquery coding-style

我在考虑组合选择器的最佳方法是什么,我在jQuery代码中将其用作变量。我想总是使用选择器作为变量,但问题是有时候我想在一个语句中使用它们,所以我在想什么才是最优雅的方法。

我应该使用add((x + y).function ...)吗?或者可能添加字符串?或者可能将jQuery变量保留为只有名称的id,这样我就可以在单个jQuery语句($ that is)

中组合
x = $('#selectorOne');
y = $('#selectorTwo');

4 个答案:

答案 0 :(得分:5)

您可以将它们存储在数组中:

var selectors = [
    '#selector1',
    '#selector2',
    ....
];

如果您想一起使用它们,请用逗号分隔join()

var alljoined = selectors.join(','); //join ALL selectors
$(alljoined).doSomethingToAll();     //and do something to all

你也可以有选择地选择:

var fewjoined = [                  //select a few selectors...
    selectors[1], 
    selectors[3],
    ...
].join(',');                       //..to join
$(fewjoined).doSomethingToAll();   //and do something

答案 1 :(得分:3)

如果它们被声明为变量,您可以使用add()

x.add(y).something();

答案 2 :(得分:1)

Multiple Selector (“selector1, selector2, selectorN”) - 您可以指定任意数量的选择器组合成单个结果。这种多表达式组合子是选择不同元素的有效方法。返回的jQuery对象中DOM元素的顺序可能不相同,因为它们将按文档顺序排列。

示例:

$("div,span,p.myClass").css("border","3px solid red");

.add() - 将元素添加到匹配元素集中。

示例:

$("p").add("div").addClass("widget");

答案 3 :(得分:0)

由于x和y只是数组,因此可以使用jQuery.merge来组合它们。 HTH