私のjQueryコードはIE9では機能しませんが、IE7、IE8、Chrome、FFではうまく機能します。
これは私のコードです:
$(document).keypress(function(){
window.clearTimeout();
window.setTimeout(function() {
//Do something...
return false;
}, 800);
});
私のjQueryコードはIE9では機能しませんが、IE7、IE8、Chrome、FFではうまく機能します。
これは私のコードです:
$(document).keypress(function(){
window.clearTimeout();
window.setTimeout(function() {
//Do something...
return false;
}, 800);
});
キーダウンに切り替えてみてください。これはコンピューターとは異なりますが、同じ効果が得られるはずです。
チュートリアルから:
キーダウンとキープレスの違いを理解するには、「文字」と「キー」の違いを理解しておくと便利です。「キー」はコンピューターのキーボード上の物理的なボタンであり、「文字」はボタンを押して入力する記号です。理論的には、keydownイベントとkeyupイベントは押されたキーまたは離されたキーを表し、keypressイベントは入力された文字を表します。理論の実装は、すべてのブラウザで同じではありません。
削除するwindow.clearTimeout()
か、パラメータを指定してください。IE9は誤ってそれを必要とします。
$(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);
});
これによると、IEkeydown()
の代わりに使用する方が良いですkeypress()