Jquery:不能用live来解雇处理程序

时间:2012-02-06 15:55:46

标签: javascript jquery

这就是我所拥有的

$('#launcher').live('click',function(){
    Results()
    Count()
})

但是当我尝试添加第三个函数时,它会破坏:

$('#launcher').live('click',function(){
    Results()
    Count()
    thirdDontWork()
})

并且第三个没有被解雇,如果我是这样的话也是如此:

$('#launcher').live('click',Count, Results)

我需要附加6个处理程序

编辑: 这很好用,所以功能都可以工作

     $('#launcher').live('click', Results)
 $('#launcher').live('click', Count)
 $('#launcher').live('click', thirdDontWork) //it actual works here...

1 个答案:

答案 0 :(得分:3)

我很确定问题是THirdDOntWOrk未在您尝试调用它的上下文范围内定义。请发布完整的代码。

一些事情:

  • 从jQuery 1.7开始,不推荐使用.live()方法。使用.on()附加事件处理程序。
  • 你不应该跳过结尾逗号,因为这可能“有时”会导致奇怪的问题 - 比如打破疯狂命名的标准函数名称。

如果您发布更多详细信息,我们可以帮助您找出问题所在。 猜测你的其他代码正在做什么/不做什么真的很难。