Maison > interface Web > tutoriel CSS > Comment mesurer la hauteur des divisions cachées en JavaScript ?

Comment mesurer la hauteur des divisions cachées en JavaScript ?

Mary-Kate Olsen
Libérer: 2024-10-30 03:30:28
original
879 Les gens l'ont consulté

 How to Measure the Height of Hidden Divs in JavaScript?

Trouver la hauteur des divs cachés : une solution de contournement

Souvent, il est nécessaire de mesurer la hauteur d'un div même lorsque son élément parent est défini sur "affichage : aucun". Cela peut être un défi, car le offsetHeight du div enfant renverra 0.

Approche initiale

Une solution qui a été explorée consiste à copier les nœuds enfants du parent caché dans un div visible sur la page. Ensuite, la hauteur de ces éléments peut être mesurée avant de supprimer les nœuds. Cependant, cette approche peut être complexe et peut ne pas être réalisable dans tous les cas.

Solution améliorée

Une approche plus robuste consiste à utiliser une bibliothèque comme YUI 2 pour identifier éléments cachés (avec "display:none" ou hauteur et largeur de 0) et les rendre visibles. En commençant par l'élément enfant en question, tous les ancêtres sont parcourus et rendus visibles jusqu'à ce qu'un parent visible soit trouvé. Cela permet de mesurer les dimensions de l'élément enfant. Une fois que tous les éléments sont mesurés, leurs valeurs d'affichage d'origine sont restaurées.

Considérations

Il est important de noter que rendre visibles les éléments masqués peut avoir un impact sur la mise en page et la visibilité du contenu. Il est crucial de s'assurer que cela se produit pendant une très brève période et ne perturbe pas l'expérience utilisateur.

De plus, des précautions doivent être prises lors de la copie d'éléments hors de leur hiérarchie parent d'origine. Les styles peuvent ne pas s'appliquer correctement lorsque les éléments sont séparés de leur contexte parent.

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.cn
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