Существует контейнер div (#content)
с заполнением 10px
и его content (#inner_content)
. Я загружаю некоторые новые вещи через ajax
(новый html содержит все в #inner_content div
) и заменяет # content's
html новым html.JQuery .animate() полная функция, выполняемая до завершения
Выполняя это, я хочу, чтобы высота контейнера div (#content)
настраивалась на высоту нового контента путем анимации. Таким образом, я установил переполнение: скрытый для контейнера div, и когда я загружаю новый контент, я получаю его высоту и анимацию div контейнера на одну и ту же высоту. Все хорошо ожидать, что иногда высота несколько больше (10-20 pixels
возможно), чем нужно, и это вызывает проблемы с дизайном.
Таким образом, я положил полную функцию на .animate()
, чтобы установить высоту контейнера div
на '' (auto
) после завершения анимации, чтобы высота была правильной. Проблема в том, что полная функция запускается немедленно, анимация пропускается, и высота автоматически становится автоматически. Вот код:
$("#content").html(response);
$("#content").animate({height: $("#inner_content").height()+"px"}, 300, function() {
$("#content").css({height: ''});
});
Как решить эту проблему? Мне нужна анимация, которую нужно выполнить, тогда высота будет установлена автоматически (это приводит к небольшому «пробелу» в процессе, потому что div сразу получает 10-20px короче, но все в порядке.
300мс не очень много, вероятно, именно поэтому вы видите его «мгновенно» – slash197
любой ошибки или предупреждения .. –
Ну, 300 мс тоже не «мгновенно». Я вижу, что анимация выполняется нормально, когда я удаляю полную функцию. – user1444094