ホームページ  >  記事  >  ウェブフロントエンド  >  onkeyup、onkeydown、onkeypressの違いのご紹介_基礎知識

onkeyup、onkeydown、onkeypressの違いのご紹介_基礎知識

WBOY
WBOYオリジナル
2016-05-16 17:19:231170ブラウズ
msdn には 3 つの違いがあります。

名前 説明

onkeypress

このイベントは、ユーザーが任意の英数字キーを押して放したときに発生します。システム ボタン (矢印キーやファンクション キーなど) が認識されません。

onkeyup

このイベントは、ユーザーが前に押したキーボードのキーを放したときに発生します。

onkeydown

このイベントは、ユーザーがキーボードのキー (矢印キーやファンクション キーなどのシステム ボタンを含む) を押すと発生します。

======================
コードをコピー コードは次のとおりです:


<script> <br>function checkForm(){ <br>if(event.keyCode ==13) { <br>event.keyCode =9; <br>} <br></script>
<フォーム名 ="form1"< ;input type ="text" name = "text1" onkeydown = "checkForm()">
form>




Enter を押すと、フォーカスがテキスト ボックスからボタンに移動します。 「onkeypress」に変更すると、フォーカスが移動したり消えたりすることはありません。ただし、「onkeyup」に変更すると、フォーカスが失われ、ページがリロードされます。

テストでは、onkeydown イベントが最初に実行され、次に onkeypress、最後に onkeydown と onkeypress が onkeyup の実行に影響を与えることがわかりました。イベント同僚が 3 人いる場合、全員がアラートの場合、アラートは 2 つだけポップアップし、アップ イベントのアラートはポップアップしません。

3 つのイベント応答には 1 つの違いがあります。つまり、onkeydown および onkeypress イベントに応答するときに入力された文字はシステムによって受け入れられませんが、onkeyup に応答するときに入力ストリームは受け入れられます。システムによって。 onkeydown は onkeypress の前に実行されるため、上記の例に基づいて、onkeydown がトリガーされたときに入力ストリームがシステムに入ろうとしていることがわかります。つまり、onkeydown イベントが完了するとすぐに入力ストリームが入ります。システムに依存するため、変更することはできません。したがって、onkeydown イベントを使用して、ユーザーが押したキーを変更できます。onkeypress イベントは、入力ストリームがシステムに入った後にトリガーされますが、入力ストリームはシステムによって処理されていないため、この時点では入力ストリームを変更できません。時間。onkeyup はシステムによって処理された後に発生します。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。