0

我有这个功能:

function Any(){
  this.b1 = $("#but1")
  this.b2 = $('<div id="but2" />')
  this.func = function(){
     alert('hello')
  }
  this.b1.on('click',function(){
   this.func()
  })
  this.b2.on('click',function(){
   this.func()
  })


}

我想做这样的事情:

(this.b1, this.b2).on('click',this.close)

4

4 回答 4

4

您可以使用add()

this.b1.add(this.b2).on('click',this.close);

小提琴

于 2013-09-02T08:42:40.487 回答
1

我会保留一系列选择器:

//code
    this.selectors = ["#but1", "#but2"];
    $(this.selectors.join(",")).on('click', this.close);
//code
于 2013-09-02T08:44:05.667 回答
0

使用.on()的高级语法,您可以将侦听器附加到
已定义且稳定的对象/选择器 (this) 以查找 可能存在或不存在的
动态子组件/选择器 (#but1, #but2)上的偶数..
. 或稍后出现。

this.on('click','#but1,#but2',this.close);

或者在更一般的情况下:

document.on('click','#but1,#but2', function(){ $('#my_dialog').close});
于 2013-09-02T09:12:53.467 回答
0
$("#but1,#but2").on("click",function(){
this.func();
});
于 2013-09-02T09:02:01.040 回答