Inkonsistentes Scrollverhalten von Dokumenten im Internet Explorer
Beim Versuch, die Scrollposition über document.body.scrollTop dynamisch anzuzeigen, sind Sie auf Folgendes gestoßen eine Anomalie: Im Internet Explorer wird durchgängig 0 zurückgegeben. Um zu verstehen, warum dies geschieht, gehen wir näher auf das Problem ein und bieten eine Lösung an.
Warum ist document.body.scrollTop im IE immer Null?
In früheren Versionen Im Internet Explorer führte eine nicht standardmäßige Interpretation der Dokumentwiedergabe zu inkonsistentem Verhalten der scrollTop-Eigenschaft. Bei Verwendung des strengen HTML5-Dokumenttyps stimmen IE10 und spätere Versionen in dieser Hinsicht jetzt mit anderen Browsern überein.
Alternative Lösung für ältere IE-Versionen
Für ältere IE-Versionen, an Um die Bildlaufposition genau abzurufen, ist ein alternativer Ansatz erforderlich. Der folgende Codeausschnitt bietet eine Fallback-Lösung:
var top = (document.documentElement && document.documentElement.scrollTop) || document.body.scrollTop;
Dieser Code prüft, ob die documentElement-Eigenschaft vorhanden ist und gibt ihren scrollTop-Wert zurück. Wenn nicht, wird auf document.body.scrollTop zurückgegriffen.
Durch den Einsatz dieser Lösung können Sie einen konsistenten Abruf der Bildlaufposition in allen Browsern sicherstellen, einschließlich älterer Versionen von Internet Explorer.
Das obige ist der detaillierte Inhalt vonWarum ist document.body.scrollTop in älteren Versionen von Internet Explorer immer Null?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!