Maison >interface Web >tutoriel CSS >Comment JavaScript peut-il détecter le débordement de texte et les points de suspension dans un élément ?

Comment JavaScript peut-il détecter le débordement de texte et les points de suspension dans un élément ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-25 18:11:17647parcourir

How Can JavaScript Detect Text Overflow and Ellipsis in an Element?

Détermination du texte débordant avec 'text-overflow: ellipsis'

Dans le développement Web, il est courant de rencontrer des situations où le texte dépasse l'espace disponible au sein d'un élément, entraînant une troncature et l'affichage de points de suspension. Pour obtenir cet effet, des propriétés CSS telles que « text-overflow » et « overflow » sont souvent utilisées. Cependant, déterminer quels éléments présentent ce comportement via JavaScript peut parfois poser un défi.

Pour résoudre ce problème, nous pouvons exploiter une fonction JavaScript ingénieuse qui détecte avec précision le texte qui déborde dans un élément. En passant l'élément en paramètre à cette fonction, nous pouvons déterminer si sa largeur réelle dépasse sa largeur visible. Voici comment cela fonctionne :

function isEllipsisActive(e) {
    return (e.offsetWidth < e.scrollWidth);
}

En inspectant les propriétés de l'élément « soffsetWidth » et « scrollWidth », nous comparons efficacement la largeur réelle de son contenu avec la largeur de la zone dans laquelle il est visible. Lorsque le contenu déborde, le « offsetWidth » sera plus petit que le « scrollWidth », indiquant la présence de points de suspension.

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