您可以在現場目標類型/酒店 網址:http://think.thinkhotels.com/自動完成問題鍍鉻
它會自動提示你。功能工作正常。但是當您按左/右箭頭鍵時,光標會像平常一樣在所有瀏覽器左右移動,除了鉻。
我試圖在http://think.thinkhotels.com/autofill/jquery.autocomplete.js
修改代碼,它有
$input.bind(($.browser.opera ? "keypress" : "keydown") + ".autocomplete", function(event) {
// a keypress means the input has focus
// avoids issue where input had focus before the autocomplete was applied
hasFocus = 1;
// track last key pressed
lastKeyPressCode = event.keyCode;
switch(event.keyCode) {
case KEY.UP:
event.preventDefault();
if (select.visible()) {
select.prev();
} else {
onChange(0, true);
}
break;
我加了幾行代碼,以便它避免了在左邊的任何行動以下/右箭頭是修改後的代碼
$input.bind(($.browser.opera ? "keypress" : "keydown") + ".autocomplete", function(event) {
// a keypress means the input has focus
// avoids issue where input had focus before the autocomplete was applied
hasFocus = 1;
// track last key pressed
if(event.which ==KEY.LEFT || event.which == KEY.RIGHT) {
return true;
}
lastKeyPressCode = event.keyCode;
switch(event.keyCode) {
case KEY.UP:
event.preventDefault();
if (select.visible()) {
select.prev();
} else {
onChange(0, true);
}
break;
關鍵是如下
var KEY = {
UP: 38,
DOWN: 40,
DEL: 46,
TAB: 9,
RETURN: 13,
ESC: 27,
COMMA: 188,
PAGEUP: 33,
PAGEDOWN: 34,
BACKSPACE: 8,
LEFT: 37,
RIGHT: 39
};
但問題沒有得到解決。 我試過返回false;此外也沒有奏效。我曾嘗試event.preventDefault(),也沒有奏效。
任何人都可以找到,請