Maison  >  Article  >  interface Web  >  Comment changer la forme d'une zone de texte en utilisant JavaScript ?

Comment changer la forme d'une zone de texte en utilisant JavaScript ?

WBOY
WBOYavant
2023-08-30 16:37:021438parcourir

如何使用 JavaScript 更改文本区域的形状?

Textarea est une boîte avec une largeur et une hauteur dynamiques, ce qui signifie que lorsque du texte y est saisi, le texte ne débordera pas et ne sera contenu que dans cette zone tex car il peut augmenter ou diminuer sa hauteur et sa largeur de manière dynamique. Textarea est principalement utilisé dans les formulaires pour obtenir l'adresse complète de l'utilisateur et d'autres contenus contenant du texte volumineux.

En général, la zone de texte se présente sous la forme d'un carré ou d'un rectangle et peut être modifiée à l'aide de JavaScript et CSS. Dans cet article, nous apprendrons comment modifier la forme d'une zone de texte à l'aide de JavaScript.

Pour modifier la forme d'une zone de texte à l'aide de JavaScript, nous pouvons utiliser différentes propriétés CSS avec différentes valeurs pour façonner la zone de texte dans différentes structures.

Changer la zone de texte en parallélogramme

Pour changer la forme de la zone de texte en parallélogramme, nous pouvons utiliser la propriété style.transform du CSS en JavaScript et utiliser la valeur donnée par skew().

Grammaire

La syntaxe suivante vous aidera à comprendre comment utiliser la méthode ci-dessus pour modifier la forme d'une zone de texte -

selected_textarea.style.transform = "skew(40deg)";

Apprenons-le en détail en l'implémentant dans un exemple de code et voyons comment il modifie la forme de la zone de texte.

Algorithme

  • Étape 1 - Dans la première étape, nous ajouterons une zone de texte au document HTML, puis nous modifierons sa forme à l'aide de JavaScript.

  • Étape 2 - Dans cette étape, nous ajouterons un élément de bouton avec un événement onclick associé et plus tard, lorsque vous cliquerez sur le bouton, nous appellerons une fonction et modifierons la forme de la zone de texte.

  • Étape 3 - Dans la prochaine étape, nous définirons une fonction JavaScript dans laquelle nous récupérerons l'élément textarea et changerons sa forme en parallélogramme en utilisant la syntaxe écrite ci-dessus.

  • Étape 4 - Dans la dernière étape, nous attribuons une fonction JavaScript comme valeur à l'événement onclick du bouton afin que la fonction soit appelée plus tard lorsque le bouton est cliqué.

Exemple

L'exemple suivant vous expliquera comment utiliser la propriété transform de CSS pour changer la forme d'une zone de texte en parallélogramme -

<html>
<body>
   <h2>Change the shape of a textarea</h2>
   <p id = "upper">The shape of below textarea will be changed once you click the button.</p>
   <textarea id = "textar">Enter something in the textarea.....</textarea> <br> <br>
   <button id = "btn" onclick = "changeShape()">Click to change the shape</button>
   <p id = "result"> </p>
   <script>
      var result = document.getElementById("result");
      var upper = document.getElementById("upper");
      function changeShape() {
         var textar = document.getElementById('textar');
         textar.style.transform = "skew(50deg)";
         upper.innerHTML = " The shape of the below textarea is changed as you clicked the button. ";
         result.innerHTML += " The shape of the textarea is changed to parallelogram using style.transform = 'skew(50deg)'";
      }
   </script>
</body>
</html>

Dans l'exemple ci-dessus, nous avons utilisé la propriété Transform avec la valeur skew() pour changer la forme de la zone de texte en parallélogramme.

Changer la forme de la zone de texte en ovale

Pour changer la forme de la zone de texte en ovale, nous pouvons utiliser la propriété borderRadius du CSS en JavaScript avec une valeur de 50%.

Grammaire

Vous pouvez suivre la syntaxe suivante pour changer la forme de la zone de texte en ellipse à l'aide de la propriété borderRadius -

selected_textarea.style.borderRadius = "50%";

Voyons la mise en œuvre réelle de cette méthode pour comprendre son fonctionnement.

Algorithme

L'algorithme de cet exemple est presque similaire à l'algorithme de l'exemple précédent. Il vous suffit d'apporter quelques petites modifications, de remplacer la propriété transform dans l'exemple ci-dessus par la propriété borderRadius et de définir sa valeur sur 50% pour obtenir la forme elliptique de la zone de texte.

Exemple

L'exemple ci-dessous illustrera comment utiliser borderRadius pour changer la forme d'une zone de texte en ovale -

<html>
<body>
   <h2>Change the shape of a textarea to an ellipse</h2>
   <p id = "upper">The shape of below textarea will be changed once you click the button.</p>
   <textarea id = "textar">Enter something in the textarea.....</textarea> <br> <br>
   <button id = "btn" onclick = "changeShape()">Click to change the shape</button>
   <p id = "result"> </p>
   <script>
      var result = document.getElementById("result");
      var upper = document.getElementById("upper");
      function changeShape() {
         var textar = document.getElementById('textar');
         textar.style.borderRadius = "50%";
         upper.innerHTML = " The shape of the below textarea is changed as you clicked the button. ";
         result.innerHTML += " The shape of the textarea is changed to ellipse using style.borderRadius = '50%'";
      }
   </script>
</body>
</html>

Dans l'exemple ci-dessus, nous utilisons JavaScript pour changer la forme de la zone de texte d'un rectangle à une ellipse à l'aide de la propriété borderRadius.

Dans cet article, nous avons discuté en détail de deux méthodes différentes pour modifier la forme d'une zone de texte en deux formes différentes à l'aide d'exemples de code pour chaque méthode. Il est également possible de changer la forme d'une zone de texte en quelque chose d'autre en utilisant d'autres propriétés CSS en JavaScript, alors continuez à chercher et continuez à apprendre.

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:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer