如何在多个预声明的jQuery对象上绑定jQuery事件

7
这是如何在几个jQuery选择器上绑定多个事件的方法:
$('#selector1,.selector2').bind('event', function (e, ui) {
   // Stuff
});

但是!如何绑定预定义的jQuery对象。例如:

var jSelector1 = $('#selector1');
var jSelector2 = $('.selector2');

因为以下内容不起作用:
jSelector1,jSelector2.bind(...);

也不会:

$jSelector1,$jSelector2.bind(...);
($jSelector1,$jSelector2).bind(...);
(jSelector1,jSelector2).bind(...);

我不在寻找jAllSelectors = $('#selector1,.selector2'); - Kyle Cureau
3个回答

9
假设您的变量是jQuery对象,则此代码应该可以正常工作。
$.each([jSelector1, jSelector2], function(i,v) {

    v.bind( ... );

});

4
或者你可以使用.add()
var jSelector1 = $('#selector1'),
    jSelector2 = $('.selector2'),
    jSelector3 = $('.selector3');

jSelector1.add(jSelector2).add(jSelector3).bind('whatever', function() {
  doSomethingAwesome();
});

4
你应该能够做到像这样:
var jSelector1 = $('#selector1');
var jSelector2 = $('.selector2');

$.each([jSelector1, jSelector2], function(index, value) { 
  value.bind(....); 
});

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接