2014-02-27 127 views
0

下面是連接到keyup事件的函數,這個函數的作品,因爲它應該在第一keyup,但以後每次keyup它多次運行的功能。因此,例如,在第一keyup事件函數運行1次,2號keyup事件函數運行2次,第3 keyup它運行的3倍等。功能運行多次的jQuery

$(document).on('pageinit','#address_page,#edit_address_page', function(){          
     $(".names").focus(function() {                       
     $(this).on('keyup', function() { 
     // Do Something 
}); 

我已閱讀關於此問題的其他帖子,但無法將其應用於我的方案。有人可以請告知這一點。

回答

2

你每次元素集中時間重新綁定keyup事件。

如果你要綁定這樣,你也應該有一個blur事件來解除綁定。真的,不過,你或許可以放心地只綁定keyup,而不是擔心focus。該元素只能實際觸發keyupfocused

$(".names").keyup(function() { 
    // do stuff 
}); 
2

的問題是每次輸入的重點是新的keyup處理程序中加入這樣嘗試(不知道的jQuery Mobile的語法和需要pageinit

$(document).on('pageinit', '#address_page, #edit_address_page', function() { 
    $(this).find('.names').on('keyup', function() { 
     // Do Something 
    }); 
}); 
時間