просто, чтобы опубликовать полное решение моей конкретной проблемы, если это может помочь другим, вот код:
JS:
$('your_trigger').click(function(event) { // click on the button to trigger animation
event.preventDefault(); // stop click
// animate
function resizer () {
// run inside a function to execute all animations at the same time
$('your_container').animate({marginTop: 0, height:99}, 400, function() {
$('#newsletter_form').show(300); // this is just my content fading in
});
// this is the footer container (inside is your_container)
// & div.push (sticky footer component)
$('footer,.push').animate({marginTop:0}, 400);
};
resizer(); // run
});
CSS: ( этолипкий нижний колонтитул, который я использую )
/* ================= */
/* = STICKY FOOTER = */
/* ================= */
html, body {
height: 100%;
}
#wrap {
min-height: 100%;
height: auto !important;
height: 100%;
margin: 0 auto -135px; /* -full expanded height of the footer */
position: relative;
}
footer, .push {
height: 101px; /* height of this is equal to the collapsed elements height */
clear: both;
}
section#newsletter,footer {
margin-top: 34px;
/* this is the difference between the expanded and the collapsed height */
}
Так что в основном я позиционирую свой footer
, как обычно с полной высотой ИТОГО (после высоты анимации), а затем я нажимаю внизначальное содержимое через margin-top, чтобы компенсировать меньшее значение по высоте при свертывании your_container
.
Затем при анимации высота your_container
регулируется, а на полях your_container
иfooter
& .push
удалены.
Надеюсь, это поможет кому-то другому, когда они наткнутся на это.
J.