因此有兩個約束我的問題:jQuery的:綁定和解除綁定直播點擊活動
- 我必須用我的單擊事件的外部函數調用,並
- 我必須使用現場點擊事件,而是綁定一個典型的點擊事件。
所以我的問題是,我試圖解除綁定click事件它發生之後,再重新綁定,一旦點擊事件代碼完成。我這樣做是爲了防止在代碼當前正在處理的過程中出現重複點擊(我有淡入/淡出動畫,可以讓按鈕快速點擊兩次或三次,從而執行我的代碼2到3次,這是所期望的) 。我使用的代碼如下:
$item.live("click", handleClick);
和
function handleClick(ev) {
$(this).die("click");
// perform code here, including things with 'ev'
$(this).live("click", handleClick);
}
我瘋了,還是這應該是沒有問題的工作?現在,我可以點擊一次,但之後不會再次點擊。顯然,die()正在工作,但由於某種原因它不會被重新綁定到該函數。我已經驗證它確實會觸及handleClick()中的代碼以重新綁定實時點擊。
任何想法?任何幫助將不勝感激。謝謝。
@格雷格,有趣。也許如果我在函數中分配了實時點擊事件,就像這樣:'var $ tempVar = $('#'+ $(this).attr('id'))',然後說'$ tempVar.live(「click 「,handleClick)'你認爲這會起作用嗎? – 2009-11-25 19:25:31
我*認爲*所以... – Greg 2009-11-25 19:46:54
是的,這將工作 – PetersenDidIt 2009-11-26 02:00:16