2010-12-17 69 views
1

我已經在我的功能(我需要在以後解除綁定):jQuery的解除綁定,然後綁定再次

$("#closebtn").click(function(){ 
    $.address.value('/x'); 
}); 

我解除綁定事件之後:

$("#closebtn").unbind("click"); 

現在,我想我的同事「再次點擊「功能到我的#closebtn,我該怎麼辦? 謝謝 d

回答

5

分配你的函數變量

var closebtn = function() { 
    $.address.value('/x'); 
}; 

然後你可以用變量

$("#closebtn").click(closebtn); 
0

綁定如果它實際上是一個按鈕,你能不能只是禁用它,而比解除綁定/重新綁定。或者,添加一個if語句,以便當不想讓它「激發」時,該函數返回false - 我認爲這會比綁定/解除綁定/重新綁定更有效,而這非常昂貴。

這樣的事情,也許呢?

$("#closebtn").click(
    function() { 
     if (inEvent) { 
      return false 
     } 
     $.address.value('/x') 
    }) 

$('someOtherElement').click(
    function() { 
     inEvent = 1 
     // ... 
     // do the processing where you don't 
     // want the function to fire 
     .. ... 
     inEvent = 0 
    })