Rumah  >  Artikel  >  hujung hadapan web  >  Bagaimana untuk Menentukan Kod Kunci dengan betul untuk Simulasi Keydown dalam Chrome?

Bagaimana untuk Menentukan Kod Kunci dengan betul untuk Simulasi Keydown dalam Chrome?

Susan Sarandon
Susan Sarandonasal
2024-10-18 13:13:02581semak imbas

How to Correctly Specify Keycodes for Keydown Simulations in Chrome?

Simulasi Keydown dalam Chrome: Parameter untuk Menentukan Kunci Betul

Untuk mensimulasikan peristiwa keydown pada elemen textarea tertentu dalam Chrome, anda harus menggunakan kaedah initKeyboardEvent. Walau bagaimanapun, kod awal yang anda berikan menerima hasil yang berbeza - kod kekunci Enter, bukannya kod kekunci m yang dimaksudkan.

Untuk membetulkannya, anda perlu mengatasi kedua-dua Kod kunci dan sifat objek Papan KekunciEvent. Berikut ialah kod yang dikemas kini:

<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>

Dengan mengatasi kedua-dua sifat, anda memastikan penyemak imbas menerima nilai kod kunci yang betul. Penyelesaian ini secara berkesan mensimulasikan peristiwa keydown untuk kunci yang ditentukan, membolehkan anda mencapai kefungsian yang diingini.

Atas ialah kandungan terperinci Bagaimana untuk Menentukan Kod Kunci dengan betul untuk Simulasi Keydown dalam Chrome?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn