Maison > interface Web > js tutoriel > Pourquoi est-il si difficile de déterminer la hauteur d'un document en JavaScript et quelle est la solution fiable ?

Pourquoi est-il si difficile de déterminer la hauteur d'un document en JavaScript et quelle est la solution fiable ?

DDD
Libérer: 2024-12-02 12:17:10
original
756 Les gens l'ont consulté

Why Is Determining Document Height in JavaScript So Difficult, and What's the Reliable Solution?

Surmonter les défis du calcul de la hauteur d'un document avec JavaScript

La détermination de la hauteur d'un document avec JavaScript présente des difficultés sur certains sites Web. Sur des plateformes telles que Fandango et Paper Swap, diverses méthodes JavaScript ne parviennent pas à produire des résultats précis.

Le problème

  • $(document).height() renvoie la valeur correcte pour Fandango mais génère une erreur sur l'échange de livres brochés.
  • document.height et document.body.scrollHeight renvoient des résultats incorrects ou nuls valeurs.
  • Application d'un fond de rembourrage au L'élément n'a aucun effet sur ces pages problématiques.

La solution : une approche globale

Pour déterminer avec précision la hauteur du document, une approche globale est nécessaire :

var body = document.body,
    html = document.documentElement;

var height = Math.max( body.scrollHeight, body.offsetHeight, 
                       html.clientHeight, html.scrollHeight, html.offsetHeight );
Copier après la connexion

Ce code calcule la valeur de hauteur maximale parmi toutes les valeurs disponibles options :

  • body.scrollHeight
  • body.offsetHeight
  • html.clientHeight
  • html.scrollHeight
  • html.offsetHeight

Considérations

  • Remarque que le calcul de la hauteur du document avant le chargement du document entraînera toujours une valeur de 0.
  • Si vous ajoutez dynamiquement du contenu ou autorisez l'utilisateur à redimensionner la fenêtre, vous devrez peut-être recalculer la hauteur du document.
  • L'utilisation d'un événement de chargement ou de préparation du document garantira un calcul précis de la hauteur au moment du chargement.

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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal