2

JavaScriptとjQueryを使用していますが、ユーザーがShiftキーを離したときに関数を呼び出したいと思います。私が思いついたコードは、これまでにテストしたすべてのブラウザで機能しますが、Firefox3.5.7を使用しているエラーコンソールに次の警告が表示されます。jQuery 1.2.6、1.3.2、1.4.1を試しました。

警告:キーアップイベントの「charCode」プロパティは使用しないでください。値は無意味です。

私はこの警告をグーグルで検索しましたが、それが起こらないようにする方法についての決定的な答えを見つけることができませんでした。これは私が使用しているコードですが、誰か提案がありますか?

$(document).ready(
  function() {
    $(document).keyup(function(e) {
      if(e.keyCode == 16) {
        alert("Do something...");
      }
    });
  }
);
4

3 に答える 3

2

jQueryを使用できませんでした。これがなくても非常に簡単です。

document.onkeyup = function(evt) {
    evt = evt || window.event;
    if (evt.keyCode == 16) {
        alert("Shift");
    }
};

keyup一部の古いブラウザ(バージョン3.1より前のSafari、バージョン1.0より前のFirefox)は、Shiftなどの修飾キーに対してイベントを発生させないことに注意してください。

于 2010-02-14T12:14:21.227 に答える
0

charCodeはjQueryによって使用される可能性があります(使用していないため)。その場合、エラーメッセージを気にする必要はありません。

于 2010-02-14T11:59:23.953 に答える
0

クロスブラウザの問題も考慮する必要があります。クロスブラウザソリューションについては、こちらをご覧ください。

http://cross-browser.com/x/examples/shift_mode.php

于 2010-02-14T12:17:51.560 に答える