Maison >interface Web >js tutoriel >Comment puis-je placer le curseur à la fin de la saisie de texte à l'aide de JavaScript ?

Comment puis-je placer le curseur à la fin de la saisie de texte à l'aide de JavaScript ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-06 17:33:12620parcourir

How Can I Place the Cursor at the End of Text Input Using JavaScript?

Insérer le curseur à la fin du texte saisi à l'aide de JavaScript

Dans le domaine du développement Web, JavaScript offre une solution robuste pour positionner le curseur à la fin du texte dans les éléments d’entrée. Pour approfondir ce sujet, nous explorerons différentes approches, en commençant par une technique concise :

this.selectionStart = this.selectionEnd = this.value.length;

Cet extrait positionne efficacement le curseur à la fin de la valeur d'entrée. Cependant, certains navigateurs introduisent des bizarreries qui nécessitent une solution plus complète, comme indiqué ci-dessous :

setTimeout(function() { that.selectionStart = that.selectionEnd = 10000; }, 0);

Dans cette variante, nous utilisons une fonction setTimeout pour différer la définition de la position du curseur, minimisant ainsi les problèmes de compatibilité.

Pour les passionnés de jQuery, voici une approche qui emploie un auditeur :

$('#el').focus(function() {
  var that = this;
  setTimeout(function() { that.selectionStart = that.selectionEnd = 10000; }, 0);
});

Cet extrait de code utilise jQuery pour établir un écouteur d'événement focus. Lors de la mise au point, il déploie la même technique de positionnement du curseur que les exemples précédents.

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