Evite a rolagem / salto da página quando a âncora estiver no URL [duplicado]
Duplicata Possível:
jquery - desabilita a âncora "pula" ao carregar uma página
Estou exibindo um div dependendo do valor de hash em um URL, mas quero evitar que a página salte para a posição desse div com esse ID específico.
Eu só tenho o problema quando a página é navegada direto com o hash no URL, por exemplo, se alguém tiver um livro marcado a página.
Por exemplo, eu tenho o url domain.com/page.html#myitem-1
ID = myitem-1, em seguida, irá exibir, o que faz, mas a página, em seguida, salta para a posição de que div que eu não quero.
Eu estava tentando usar scrollTop (0) para forçar a posição da janela de volta ao topo, mas parece que isso é chamado antes que o salto de âncora ocorra sem efeito
Exemplo de código:
$(document).ready(function() {
$('.glossary-term').hide();
$(window.location.hash).show();
$(window).scrollTop(0);
});
A única maneira que eu consegui fazer com que este scrollTop funcionasse foi colocá-lo em um setTimeOut com uma duração de 1, mas isso parece um pouco um hack. Alguma outra sugestão?
obrigado
B