0

我有一个关键问题,即当我单击应该调用回调的元素时,我的 jquery 插件有回调。

我观察到点击事件触发了不止一次,因为我让一些项目正常工作,但有些项目没有触发回调。

$(this).children('li').unbind('click').click(function(){
switch(this.id){
    case 'foo' : options.foocallback();
      break;
    case 'bla' : options.blacallback();
      break;
    .....
  }
}); 

HTML:

<ul>
<li id="foo">...</li>
<li id="bla">...</li>
...
</ul>

现在,当我单击列表项时,一些工作正常并调用回调

** 但是有些项目没有调用回调**

4

1 回答 1

2

您可以尝试这样的事情(如果您的事件绑定不依赖于某些条件)

HTML

<ul id="listholder">
  <li id="foo">...</li>
  <li id="bla">...</li>
  ...
</ul>

jQuery

$('#listholder li').on('click', function() {
 switch(this.id){
    case 'foo' : options.foocallback();
      break;
    case 'bla' : options.blacallback();
      break;
    .....
  }
});
于 2012-08-13T09:39:40.190 回答