Pergunta

Existe uma maneira de retardar o "salto" para uma marca de âncora no carregamento da página usando ASP.NET e jQuery?

problema real é que eu tenho uma função jQuery que na página de carga esconde todos os divs de uma certa classe. Agora, quando eu tenho uma marca de âncora no meio da página, e link para essa âncora, quando a página é carregada a "salto âncora" acontece antes jQuery tem uma chance para esconder os divs -> usuário vai para parte completamente errado do página.

saude, J.Arola

Foi útil?

Solução

Por que você usa jQuery para ocultar os divs? Basta usar um estilo em vez disso, e os divs estão escondidos desde o início:

<style type="text/css">
.TheClassToHide { display: none; }
</style>

Outras dicas

Talvez você pode definir fragmento do local para uma cadeia vazia e armazenar o valor antigo em cima de carregamento da página, fragmento de localização, então reposto quando tudo está feito.

ASP.Net, provavelmente, não pode ajudar, porque o fragmento não será enviado para o servidor.

Se você controlar as ligações recebidas, você poderia substituir o #hash sufixo com um ?query sufixo. Que será ignorado pelo navegador, mas é acessível a JavaScript no location.search. Você pode então fazer a rolagem-se em JavaScript, depois de esconder suas divs.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top