0

BlackBerry デバイスを扱うのは初めてです。現在、9700 で JavaScript の問題が発生し、キープレス イベントをトラップして適切なキーコードを取得しています。

私はこのJavaScriptを持っています:

function numbersonly(e) {
    var key
    if(window.event) {
        key = window.event.keyCode; // IE
    }else{
        key = e.which; // Firefox
    }

    alert('keycode : ' + key);

}

そして、邪魔にならない addEvent スクリプトを介して入力フィールドにアタッチされます。

標準のデスクトップ ブラウザー (Firefox および IE) では、ユーザーが思っているとおりに動作します...キーを押すと、アラートを介してキーコードが表示されます。

ただし、ブラックベリーでは、キーを押すと次の 2 つのいずれかが実行されます。

  • 押したキーが 1 ~ 9 の数字の場合、何も起こりません。
  • 他のキーの場合、keyCode は「未定義」です。

何が起こっているのか分かりますか?これは、BlackBerry JavaScript サポートの制限によるものだと思います。

アップデート:

OS6 を実行している 9800 シミュレーターでもこれをテストしました。そこに問題はありません。したがって、これは BlackBerry OS5 または BlackBerry の物理キーボードの問題です。

4

2 に答える 2

0

インライン イベント ハンドラを追加したときにイベント変数が設定されているかどうかはわかりません。

JavaScript からイベント ハンドラを設定しようとしましたか。だから何か

document.getElementById('mytextelement').onkeypress = keytest;
于 2011-01-12T18:39:26.710 に答える
0

e.which の代わりに e.keyCode を使用してみてください

于 2011-01-13T16:47:29.123 に答える