Ich hoffe, einen Weg zu finden, um die Position des aktuell sichtbaren Fensters (relativ zur Gesamtseitenbreite / -höhe) zu ermitteln, damit ich damit einen Bildlauf von einem Abschnitt zum anderen erzwingen kann. Es scheint jedoch eine enorme Anzahl von Optionen zu geben, wenn es darum geht, zu erraten, welches Objekt das wahre X / Y für Ihren Browser enthält.
Welche davon muss ich sicherstellen, dass IE 6+, FF 2+ und Chrome / Safari funktionieren?
window.innerWidth
window.innerHeight
window.pageXOffset
window.pageYOffset
document.documentElement.clientWidth
document.documentElement.clientHeight
document.documentElement.scrollLeft
document.documentElement.scrollTop
document.body.clientWidth
document.body.clientHeight
document.body.scrollLeft
document.body.scrollTop
Und gibt es noch andere? Sobald ich weiß, wo sich das Fenster befindet, kann ich eine Ereigniskette festlegen, die langsam aufruft, window.scrollBy(x,y);
bis sie meinen gewünschten Punkt erreicht.
quelle
jQuery.fn.offset()
.scrollTop()
/scrollLeft()
Tut im Grunde die gleichen, aber nicht subtrahiert clientTop / Clientleft .Vielleicht einfacher;
Credits: so.dom.js # L492
quelle
document.documentElement.scrollTop
was überall funktioniert.Mit reinem Javascript können Sie Window.scrollX und Window.scrollY verwenden
Anmerkungen
Hier ist eine kurze Demo
quelle
window.pageYOffset
quelle