jQuery多个ID选择器通过变量连接

时间:2017-03-21 14:33:18

标签: javascript jquery

这是我的代码:

var $btnNone = $('#btn-none');
var $btn1234 = $('#btn-1, #btn-2, #btn-3, #btn-4');

// This selector works fine
var $btnReview1234None = $('#btn-1, #btn-2, #btn-3, #btn-4, #btn-none')

// HOW TO MAKE THIS SELECTOR WORK.
// This selector ignores $btnNone but respects $btn1234.
// This listens only first item in the selector
var $btnReview1234None = $($btn1234, $btnNone); 

$btn1234None.click(function(){
  alert('Lorem')
});

1 个答案:

答案 0 :(得分:2)

问题是因为$($btn1234, $btnNone)将被视为上下文选择器,即。 jQuery将搜索DOM以在 $btn1234中找到$btnNone元素

要解决此问题,您可以为选择器提供两个元素的数组:

var $btnReview1234None = $([$btn1234, $btnNone]); 

或者您可以使用add()

var $btnReview1234None = $btn1234.add($btnNone);