2014-09-10 79 views
0

我正在更改当前类的第一个单击事件,然后我希望它替换的类具有自己的单击事件。这是我当前的尝试:更改类并添加单击事件

$(".originalButton").on("click", function(){ 
    // THIS WORKS, it changes the class. 
    $(this).closest(".questions").find(".originalButton").removeClass("originalButton").addClass("correctButton").off("click"); 
}); 

现在有权根据事件处理程序添加此:

$(".correctButton").on("click", function(){ 
    debugger; 

}); 

理想我想有一些其他的调试器来代替,但在这一点的情况下竟然没有开火当单击correctButton类按钮时,即使当我检查元素类更新(从第一次单击事件)。

回答

2

您需要在使用事件委托时动态地添加/删除类。使用方法:

$(".questions").on("click",'.correctButton', function(){ 
    debugger; 
}); 
+1

他应该将“.originalButton”与代表团绑定在一起。如果没有,这是第二次这两个事件将被解雇。 – Johnny5 2014-09-10 14:48:40

+1

@ Johnny5:不确定OP是否需要。当OP添加newClass – 2014-09-10 14:49:39

+0

不是''body'标签时,他将删除点击事件,他可以直接使用'.correctButton'的直接父项 – Zafar 2014-09-10 14:53:51