Maison > interface Web > tutoriel CSS > Pourquoi « document.body.scrollTop » renvoie-t-il 0 dans IE et comment puis-je y remédier ?

Pourquoi « document.body.scrollTop » renvoie-t-il 0 dans IE et comment puis-je y remédier ?

Linda Hamilton
Libérer: 2024-11-12 09:28:01
original
913 Les gens l'ont consulté

Why Does `document.body.scrollTop` Return 0 in IE and How Can I Fix It?

Obtenir une position de défilement précise dans IE à l'aide de document.body.scrollTop

Dans IE, accéder de manière cohérente à la position de défilement via document.body.scrollTop renvoie 0, même lors du défilement. Ce comportement peut être déroutant pour les développeurs cherchant à suivre efficacement les événements de défilement.

Pour résoudre ce problème, les navigateurs implémentent deux modes de rendu distincts : le mode Quirks et le mode Standards. Le mode Quirks est conçu pour les sites Web plus anciens créés avant que les normes du Web ne soient largement adoptées. En mode Quirks, IE définit incorrectement document.body.scrollTop sur 0.

Pour résoudre cet écart, une solution consiste à vous assurer que votre site Web utilise le doctype en mode Standards :

<!DOCTYPE html>
Copier après la connexion

Au cas où votre site Web ne peut pas passer en mode Standards, il existe une approche alternative :

var top = (document.documentElement && document.documentElement.scrollTop) || 
              document.body.scrollTop;
Copier après la connexion

Ce code vérifie à la fois le documentElement et le corps. Si documentElement est défini, il est prioritaire car il fournit une position de défilement plus précise. Sinon, il revient à document.body.scrollTop.

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