Heim  >  Artikel  >  Web-Frontend  >  Die Scrolltop-Methode in JS, die perfekt mit den wichtigsten Browser-Javascript-Kenntnissen kompatibel ist

Die Scrolltop-Methode in JS, die perfekt mit den wichtigsten Browser-Javascript-Kenntnissen kompatibel ist

WBOY
WBOYOriginal
2016-05-16 16:03:101143Durchsuche

1. Unterschiede in scrollTop zwischen Browsern

IE6/7/8/9/10:

Für Seiten ohne Doctype-Deklaration können Sie document.body.scrollTop verwenden, um die scrollTop-Höhe zu ermitteln Für Seiten mit Doctype-Deklaration können Sie document.documentElement.scrollTop ;
verwenden

Safari:

Safari ist etwas ganz Besonderes, es hat eine eigene Funktion zum Abrufen von scrollTop: window.pageYOffset;

Firefox:

Firefox und andere relativ Standardbrowser sind viel einfacher zu bedenken. Verwenden Sie einfach document.documentElement.scrollTop

2. Ermitteln Sie den scrollTop-Wert

Erhalten Sie perfekt die scrollTop-Aufgabenphrase:

Code kopieren Der Code lautet wie folgt: var scrollTop = document.documentElement.scrollTop ||. window.pageYOffset ||

Der scrollTop-Wert kann unter allen Umständen durch diese Zuweisung erhalten werden.
Schauen Sie sich diese Aufgabe genau an. Fällt Ihnen etwas auf? ? Das ist richtig, window.pageYOffset (Safari) wird in der Mitte von || platziert.

Denn wenn die Zahl 0 mit undefine ODER-verknüpft wird, gibt das System standardmäßig den letzten Wert zurück. Das heißt, 0 == undefine in OR-Operation;


Wenn sich die Bildlaufleiste der Seite ganz oben befindet, dh wenn der scrollTop-Wert 0 ist, kehrt window.pageYOffset (Safari) unter IE zu „undefiniert“ zurück Am Ende der ODER-Operation gibt scrollTop undefiniert zurück. Wenn undefiniert in der nächsten Operation verwendet wird, wird ein Fehler gemeldet.

Andere Browser geben undefiniert nicht zurück, unabhängig von der scrollTop-Zuweisung oder der Reihenfolge der Vorgänge. Es kann sicher verwendet werden.

Am Ende ist es also immer noch das Problem des IE...

Ich bin etwas verwirrt, ich weiß nicht, ob ich mich klar ausdrücken kann.

Aber am Ende bin ich zu dem Schluss gekommen, dass dieser Satz getestet wurde und in Ordnung ist, sodass Sie ihn bedenkenlos verwenden können.


Code kopieren

Der Code lautet wie folgt: var scrollTop = document.documentElement.scrollTop ||. window.pageYOffset ||
Dies ist die perfekte Zuweisungsanweisung, um scrollTop zu erhalten.

Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, er gefällt Ihnen allen.
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn