Positionnement du curseur du clavier dans les zones de texte HTML
Pour déplacer le curseur du clavier dans une zone de texte, une position spécifique peut être ciblée à l'aide de JavaScript.
Générique Fonction :
function setCaretPosition(elemId, caretPos) { var elem = document.getElementById(elemId); if (elem) { if (elem.createTextRange) { // IE specific var range = elem.createTextRange(); range.move('character', caretPos); range.select(); } else if (elem.selectionStart) { elem.focus(); elem.setSelectionRange(caretPos, caretPos); } else { elem.focus(); // Fallback for browsers not supporting setSelectionRange } } }
Utilisation :
Exemple :
Pour définir le curseur avant le caractère 20 dans une zone de texte de 50 caractères :
setCaretPosition('myTextbox', 20);
Compatibilité :
Notes supplémentaires :
Vous pouvez également forcer le curseur pour accéder à la fin de toutes les zones de texte sur la page focus en utilisant ce code (dans la fonction addLoadEvent) :
for (var i = 0; i < textAreas.length; i++) { textAreas[i].onfocus = function() { setCaretPosition(this.id, this.value.length); } }
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!