Maison >interface Web >js tutoriel >Comment spécifier correctement les codes clés pour les simulations de frappe dans Chrome ?

Comment spécifier correctement les codes clés pour les simulations de frappe dans Chrome ?

Susan Sarandon
Susan Sarandonoriginal
2024-10-18 13:13:02619parcourir

How to Correctly Specify Keycodes for Keydown Simulations in Chrome?

Simulation de frappe dans Chrome : paramètres pour spécifier la clé correcte

Pour simuler des événements de frappe sur un élément de zone de texte donné dans Chrome, vous devez utiliser la méthode initKeyboardEvent. Cependant, le code initial que vous avez fourni a reçu un résultat différent : le code clé Entrée, au lieu du code clé m prévu.

Pour corriger cela, vous devez remplacer à la fois le code clé et les propriétés which de l'objet KeyboardEvent. Voici le code mis à jour :

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

En remplaçant les deux propriétés, vous vous assurez que le navigateur reçoit la valeur de code clé correcte. Cette solution simule efficacement l'événement keydown pour la clé spécifiée, vous permettant d'obtenir la fonctionnalité souhaitée.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn