Redirect e scroll to com jQuery
Há muito tempo (muito mesmo, em 2009) eu fiz um post no meu blog sobre scroll to – scroll animado com jQuery. Devido algumas pessoas estarem com dúvidas de como fazer isso mas após um redirect de página, estou criado esse tutorial.
Scroll to
O código do Scroll to é bem simples, como já dito em meu site:
$('html, body').animate({
scrollTop: $("#id_da_ancora").offset().top
}, 2000);
Após o redirect
A execução continua simples, o que muda é o momento da execução do script. No modelo normal, seria executado quando acontecesse algum click (provavelmente em algum link), porém aqui será no load da página.
A única coisa que precisamos é receber via QueryString qual será o id do elemento.
OBS: caso sempre seja um elemento específico nessa tela, poderá setar diretamente no onload
Código
//verifico se existe hash na url (caso não tenha, não preciso fazer o scroll)
if (window.location.hash) {
//pego a hash
var hash = window.location.hash
//animo até meu elemento
$('html, body').animate({
scrollTop: $(hash).offset().top
}, 2000);
}
E para adicionar essa hash na minha url, basta adicionar #id_do_elemento no final do href do link. Ex: href="minhaoutrapagina.php#id_do_elemento"

ASSINE NOSSO FEED:TODOS OS POSTS
SIGA-NOS NO TWITTER:@JQUERYBR
FIQUE LIGADO NOS PODCASTS:ITUNES