Espero encontrar uma maneira de obter a posição atual da janela visível (em relação à largura / altura total da página) para que eu possa usá-la para forçar um deslocamento de uma seção para outra. No entanto, parece haver uma enorme quantidade de opções quando se trata de adivinhar qual objeto contém o verdadeiro X / Y para o seu navegador.
De quais delas preciso para garantir que o IE 6+, FF 2+ e Chrome / Safari funcionem?
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
E existem outros? Depois de saber onde está a janela, posso definir uma cadeia de eventos que será chamada lentamente window.scrollBy(x,y);
até atingir o ponto desejado.
fonte
jQuery.fn.offset()
.scrollTop()
/scrollLeft()
faz basicamente o mesmo, mas não subtraia clientTop / clientLeft.Talvez mais simples;
Créditos: so.dom.js # L492
fonte
document.documentElement.scrollTop
que funciona em qualquer lugar.Usando javascript puro, você pode usar Window.scrollX e Window.scrollY
Notas
Aqui está uma demonstração rápida
fonte
window.pageYOffset
fonte