2011-07-22 64 views
0

我使用jquery.hotkeys.js和我的映射以下列方式鍵綁定:jquery.hotkeys.js代替輸入欄.bind

$(document).bind('keydown', 'i', function() { 
     $("input#foo").focus() 
}); 

然而,調用焦點(在嘗試後,試圖將光標移動到輸入字段的結尾時按下i將關注文檔),它只是用i替換輸入字段的內容。可以防止全部更換,但即使如此,仍然會附加i。例如:

$(document).bind('keydown', 'i', function() { 
     var val = $("input#foo").val() 
     $("input#foo").focus() 
     $("input#foo").val(val.substring(0,val.length-1) 
}); 

在這種情況下,television輸入將變成televisioi。任何知道任何解決方法的人都有可能?謝謝!!

回答

2

您可以通過將事件阻止默認功能:

$(document).bind('keydown', 'i', function(event) { 
    event.preventDefault(); 
    $("input#foo").focus(); 
}); 

我想你會想防止KEYUP功能太:

$(document).bind('keyup', 'i', function(event) { 
    event.preventDefault(); 
}); 
+0

燁說做到了。謝謝! – matt