ホームページ >ウェブフロントエンド >jsチュートリアル >Chrome でキーダウン シミュレーションのキーコードを正しく指定する方法は?

Chrome でキーダウン シミュレーションのキーコードを正しく指定する方法は?

Susan Sarandon
Susan Sarandonオリジナル
2024-10-18 13:13:02622ブラウズ

How to Correctly Specify Keycodes for Keydown Simulations in Chrome?

Chrome でのキーダウン シミュレーション: 正しいキーを指定するパラメーター

Chrome で特定の textarea 要素のキーダウン イベントをシミュレートするには、initKeyboardEvent メソッドを利用する必要があります。ただし、指定した最初のコードは、意図した m キーコードではなく、Enter キーコードという異なる結果を受け取りました。

これを修正するには、keyCode と KeyboardEvent オブジェクトの what プロパティの両方をオーバーライドする必要があります。更新されたコードは次のとおりです:

<code class="javascript">var keyEvent = document.createEvent('KeyboardEvent');

// Override both keyCode and which
Object.defineProperty(keyEvent, 'keyCode', {
  get: function() {
    return this.keyCodeVal;
  }
});
Object.defineProperty(keyEvent, 'which', {
  get: function() {
    return this.keyCodeVal;
  }
});

keyEvent.initKeyboardEvent('keydown', true, false, null, 0, false, 0, false, 77, 0);
keyEvent.keyCodeVal = 77;
inputNode.dispatchEvent(keyEvent);</code>

両方のプロパティをオーバーライドすることで、ブラウザーが正しいキーコード値を受け取るようになります。このソリューションは、指定されたキーのキーダウン イベントを効果的にシミュレートし、目的の機能を実現できるようにします。

以上がChrome でキーダウン シミュレーションのキーコードを正しく指定する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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