工作我的jQuery代碼在IE 9不工作,但在IE7,IE8,Chrome瀏覽器,FF工作。按鍵時()不在IE 9
這是我的代碼:
$(document).keypress(function(){
window.clearTimeout();
window.setTimeout(function() {
//Do something...
return false;
}, 800);
});
工作我的jQuery代碼在IE 9不工作,但在IE7,IE8,Chrome瀏覽器,FF工作。按鍵時()不在IE 9
這是我的代碼:
$(document).keypress(function(){
window.clearTimeout();
window.setTimeout(function() {
//Do something...
return false;
}, 800);
});
刪除window.clearTimeout()
或給它一個參數。 IE9 incorrectly requires它。
$(document).keypress(function(){
//window.clearTimeout();
window.setTimeout(function() {
alert("Worky!");
return false;
}, 800);
});
或
var timeout;
$(document).keypress(function(){
window.clearTimeout(timeout);
timeout = window.setTimeout(function() {
alert("Worky!");
return false;
}, 800);
});
優秀!感謝您的幫助!我錯過了'timeout'。 – 2013-03-06 21:26:54
嘗試切換到的keydown,這是電腦不同,但要達到同樣的效果
從教程:
爲了瞭解KeyDown和按鍵之間的區別,這是理解「字符」和「關鍵」之間的區別是有用的。 「鍵」是計算機鍵盤上的物理按鈕,而「字符」是通過按下按鈕鍵入的符號。理論上,keydown和keyup事件表示鍵被按下或釋放,而keypress事件表示鍵入的字符。理論的實現在所有瀏覽器中都不相同。
謝謝您的回答,我試過,但它不工作。我使用jQuery代碼對於影響如家搜索頁面上谷歌搜索輸入。當我打字什麼的話,有些測試結果如下圖。 – 2013-03-06 21:10:26
根據this最好使用keydown()
代替keypress()
上IE
這可能是一個缺乏'<!DOCTYPE HTML>'的。 – 2013-03-06 21:03:30
什麼是調用clearTimeout沒有timeoutid點?它不應該在這種情況下,做任何事情(我懷疑這就是你的問題) – 2013-03-06 21:03:49
謝謝,但我的網站是不是缺了它:( – 2013-03-06 21:15:24