Javascript 使用.add()选择多个jQuery对象
该方法是否允许一次选择多个对象,而不是一次添加一个Javascript 使用.add()选择多个jQuery对象,javascript,jquery,Javascript,Jquery,该方法是否允许一次选择多个对象,而不是一次添加一个 one.add(two).add(three).add(four).on("click", function() { }); 以下变量按其设置方式设置,因为每个变量都带有不同的函数 var one = $("#1"); var two = $("#2"); var three = $("#3"); var four = $("#4"); 但是,如果我想添加一个适用于所有这些元素的额外函数,该怎么办?我必须一个接一个地添加它们吗 我
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来选择它们,但我只想利用上述变量。我更喜欢这种数组方法,纯粹是为了可读性
$([one, two, three, four]).each(function() {
// your function here
});
您可以将它们放入这样的数组中
var k = [one,two,three,four]
$.each(k,function(){
$(this).click(function(){
//Function here
});
});
不能一次添加多个对象,例如:
var groupThree = one.add(three, five); // will not work as expected
您可以缓存添加的对象,以便只需添加一次-
但我更喜欢数组方法,这只是一种不同的思考方式。BTW:将数字作为ID声明的第一个字符从来都不是一个好主意-@yckart他们从来没有这样命名过。这只是为了说明的目的。或者只是这样做:$k.clickfunction{…}这很好,您可能会从这种方法中获得更多好处,比如:groupOne.clickfunction{};
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'});
});