.add()
方法是否允许一次选择多个对象而不是一次添加一个?
one.add(two).add(three).add(four).on("click", function() { });
以下变量按其设置方式设置,因为每个变量都具有不同的功能。
var one = $("#1");
var two = $("#2");
var three = $("#3");
var four = $("#4");
但是如果我想添加一个适用于所有这些元素的额外函数呢?我是否必须逐个添加它们?
我知道你可以使用$("#1,#2,#3,#4")
选择它们,但我只是想利用上述变量。
答案 0 :(得分:31)
我更喜欢这种阵列方法,纯粹是为了可读性......
$([one, two, three, four]).each(function() {
// your function here
});
答案 1 :(得分:11)
您不能一次添加多个对象,例如:
var groupThree = one.add(three, five); // will not work as expected
您可以缓存添加的对象,这样您只需添加一次 - http://jsfiddle.net/X5432/
var one = $("#1");
var two = $("#2");
var three = $("#3");
var four = $("#4");
var five = $("#5");
var groupOne = one.add(two).add(three).add(four);
var groupTwo = groupOne.add(five);
$('#first').click(function(e){
e.preventDefault();
groupOne.css({'background': '#00FF00'});
});
$('#second').click(function(e){
e.preventDefault();
groupTwo.css({'background': '#FF0000'});
});
但我更喜欢数组方法,这只是一种不同的思考方式。
答案 2 :(得分:4)
您可以将它们放入像这样的数组中
var k = [one,two,three,four]
$.each(k,function(){
$(this).click(function(){
//Function here
});
});