JQuery Smooth Sliding Div Height
-
19-09-2019 - |
Pergunta
Eu tenho uma div com 400px de altura com o ID "Conteúdo", faço um slidetoggle na div, carrego alguns dados na div de uma altura variável, por exemplo, 200px e depois faço outro slidetoggle. O que recebo é o slide em expansão para 400px e depois voltar para 200px. E o mesmo ao contrário, expandindo para 200px, depois pule para 400px.
Este é o meu código:
$('#content').slideToggle(600, function() {
$("#content").load('data.php').slideToggle(600);
});
Por isso, pensei que poderia fazer algo assim, que deslizaria para cima da div, carregaria os dados e, depois de serem carregados, deslizaria para baixo. Isso não pula como o método acima, mas é bastante espumoso por algum motivo.
$('#content').slideUp(600, function() {
$("#content").load('data.php', function() {
$("#content").slideDown(600);
});
});
Alguém pode me dizer se existe uma maneira melhor de fazer isso para que eu possa deslizá -lo sem problemas?
Solução 2
$('#content').slideUp(600, function() {
$("#content").load('data.php', function() {
$("#content").slideDown(600);
});
});
Isso produz os melhores resultados.
Outras dicas
Eu tive um problema parecido. Consegui corrigir esse problema definindo a altura da div antes de deslizar para cima.
Exemplo:
$("#myDiv").height($("#myDiv").height());
$("#myDiv").slideUp();