ホームページ >ウェブフロントエンド >jsチュートリアル >Keydown イベントを使用してユーザーが実装コードを入力できないようにする_JavaScript スキル

Keydown イベントを使用してユーザーが実装コードを入力できないようにする_JavaScript スキル

WBOY
WBOYオリジナル
2016-05-16 16:55:412053ブラウズ

まずは各イベントの違いを理解してください

KeyDown: コントロールにフォーカスがあるときにキーが押されたときに発生します
KeyPress: コントロールにフォーカスがあるときにキーが押されたときに発生します
KeyUp: In のときに発生しますコントロールにフォーカスがあるとキーが放されます

1. KeyPress は主に文字や数字などの ANSI 文字を受け取るために使用されます。 KeyDown および KeyUP イベント プロセスは通常、PrScrn を除くキーボード上のすべてのキーをキャプチャできます (特殊キーボードの特殊キーについてはここでは説明しません

2)。KeyPress は 1 つの文字のみをキャプチャできますが、KeyDown と KeyUp はキーの組み合わせをキャプチャできます。 .

3. KeyPress はキーボード (SHIFT キー) の物理的なステータスを表示せず、各文字の大文字と小文字の形式、つまり KeyDown を渡すだけです。 KeyDown と KeyUp は使用できません。KeyDown と KeyUp は、物理キーを表示する keycode (A と a を同じキーとして返す) と shift という 2 つのパラメータを使用して各文字の大文字と小文字を解釈します。キーのシフトを示し、A または a のいずれかを返します。5. KeyPress は、小さなキーボードの数字とメイン キーボードの数字を区別しません。

6. 、KeyDown、KeyUp イベントは、キーが押されたとき (KeyDown) または離されたとき (KeyUp) に発生します。これは、通常、押されたキーボードのキーがすぐに放されるためです。マウス)、これら 2 つのイベントにどちらを使用するかという違いは大きくありません。さらに、up と他の 2 つの違いには、キーの変更された状態を判断するために up を使用する必要があります。たとえば、特定の入力フィールドでは、キーボードの数字キーの

[48-57] 数字キーのみを入力できます。
[96-105] テンキー
さらに、Backspace キーで削除が可能です

コードは次のとおりです




コピーcode

コードは次のとおりです。 var input = document.getElementById('number_ipt') input.onkeydown = function(e) { var keyCode = e.keyCode if ( !isNumber(keyCode) ) return false
}

// 数字のみ入力可能
function isNumber(keyCode) {
// Number
if (keyCode >= 48 && keyCode // 小さな数字キーボード
if ( keyCode >= 96 && keyCode // Backspace キー
if (keyCode == 8) return true
return false
}

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。