A página da web está sendo rolada para o local superior enquanto destrói o isótopo e o reinicia
-
13-12-2019 - |
Pergunta
estou a usar http://isotope.metafizzy.co/de isotope
plugin para criar layout de grade.Ao clicar em qualquer uma das grades, exibo um pop-up modal mostrando os detalhes.Ao fechar o pop-up modal, o controle volta ao antigo layout da grade de isótopos.O conteúdo do pop-up modal é hidden
sob a parte do item isótopo.Tive problemas com o conteúdo do pop-up modal sendo exibido corretamente.Então, o que eu fiz foi clicar em qualquer grade do isótopo <a>
item, eu usei $.isotope('destroy');
.Só então o pop-up modal funcionou corretamente.Além disso, ao fechar o pop-up modal, reinicio a grade isotópica usando o seguinte código:
$("#container").isotope({
itemSelector:".item",
masonry:{
columnWidth:100,
gutterWidth:20
},
animationOptions:{
duration: 750,
easing: 'linear',
queue: false
}
});
Eu adicionei return false;
no final de todas as funções de manipulação <a>
elemento onclick
evento (usando jQuery
de delegate()
função).
Após a reinicialização, a página volta ao topo.Fora isso, não há problema com a usabilidade da página.Estou preso.Por favor ajude.
Solução
Outras dicas
Eu não estou muito familiarizado com o isotope
plugin que você está usando, mas impedindo a rolagem da página como resultado de clicar em <a>
elementos pode ser prevenido.
Em vez de return false
, você poderia tentar preventDefault()
.
Em um manipulador de cliques (por exemplo), você faria isso -
$('a').on('click',function(e){
// other code here
e.preventDefault();
});