Maison > interface Web > js tutoriel > Comment implémenter des zones de texte à redimensionnement automatique à l'aide d'un prototype JavaScript ?

Comment implémenter des zones de texte à redimensionnement automatique à l'aide d'un prototype JavaScript ?

Susan Sarandon
Libérer: 2024-10-20 21:27:02
original
262 Les gens l'ont consulté

How to Implement Auto-Resizing TextAreas Using Prototype JavaScript?

Comment redimensionner automatiquement une zone de texte à l'aide d'un prototype

Pour une expérience utilisateur visuellement attrayante, vous souhaiterez peut-être une zone de texte qui ajuste sa hauteur en fonction de son contenu textuel. Ci-dessous, nous explorons une solution utilisant le framework Prototype JavaScript.

Redimensionnement vertical

Le redimensionnement vertical est une implémentation courante, comme le démontre Facebook lors de la modification des publications sur le mur. Il garantit que la zone de texte s'adapte à tout le texte sans espacement excessif.

Implémentation JavaScript

Voici un extrait de code JavaScript présentant le dimensionnement automatique vertical à l'aide du prototype :

resizeIt = function() {
  var str = $('textarea-id').value;
  var cols = $('textarea-id').cols;
  var linecount = 0;

  $A(str.split("\n")).each(function(l) {
    linecount += 1 + Math.floor(l.length / cols); // Consider long lines
  })

  $('textarea-id').rows = linecount;
};
Copier après la connexion

Utilisation

Pour implémenter le dimensionnement automatique, vous pouvez l'attacher à l'événement 'keydown' d'un élément de zone de texte spécifique comme ceci :

Event.observe('textarea-id', 'keydown', resizeIt );
Copier après la connexion

Redimensionnement horizontal

Le redimensionnement horizontal n'est pas recommandé en raison de problèmes potentiels de retour à la ligne, de longues lignes et d'autres problèmes de mise en page.

Conclusion

Le dimensionnement automatique des zones de texte à l'aide de JavaScript offre une interface plus dynamique et conviviale. Le code fourni utilisant Prototype est une solution simple et efficace pour le redimensionnement vertical. Cependant, gardez à l’esprit les limites et les défis potentiels du redimensionnement horizontal lorsque vous envisagez votre mise en œuvre.

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!

source:php
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal