2014-09-10 74 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