Maison >interface Web >js tutoriel >Comment compter efficacement les lignes de texte dans un élément DOM ?
Compter les lignes de texte dans un élément DOM
Déterminer le nombre de lignes dans un élément div désigné est possible grâce à diverses approches. Considérez un div spécifique avec le contenu suivant :
<div id="content">hello how are you?</div>
Le nombre de lignes dans ce div peut fluctuer en fonction de divers facteurs, tels que la largeur du div, la taille de la police et la hauteur de la ligne. Pour compter avec précision ces lignes, nous pouvons utiliser les techniques suivantes :
Utilisation de la hauteur du div et de la hauteur de la ligne
Si la hauteur du div est directement influencée par son contenu, nous pouvons calculez le nombre de lignes à l'aide de la formule suivante :
Number of Lines = Div Height / Line Height
Pour obtenir la hauteur div, utilisez :
var divHeight = document.getElementById('content').offsetHeight;
Pour récupérer la hauteur de ligne, utilisez :
var lineHeight = document.getElementById('content').style.lineHeight;
Comptabilisation du remplissage et de l'espacement inter-lignes
Notez que ce calcul devra peut-être être ajusté davantage pour tenir compte du remplissage, de l'espacement inter-lignes ou d'autres facteurs pouvant affecter la espace vertical occupé par le texte dans le div.
Exemple de test
Pour un exemple plus complet, fournissons un test entièrement autonome qui définit explicitement la hauteur de la ligne :
<code class="javascript">function countLines() { var el = document.getElementById('content'); var divHeight = el.offsetHeight; var lineHeight = parseInt(el.style.lineHeight); var lines = divHeight / lineHeight; alert("Lines: " + lines); }</code>
<code class="html"><body onload="countLines();"> <div id="content" style="width: 80px; line-height: 20px"> hello how are you? hello how are you? hello how are you? hello how are you? </div> </body></code>
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!