我想将DIVs位置设置为bottom = 0和height = 0之后,以便第一个动画以相同的速度顺畅地跟随第二个动画。 问题是DIV会根据内容调整它的高度,因此当我对两个动画使用相同的持续时间时,速度会有所不同。
很难用言语形容我;这是链接:
$(document).ready(function () {
$("#box").click(function () {
$("#brief").animate({
bottom: "0px",
}, 1500, function () {
$("#brief").animate({
height: "0px",
}, 1500, function () {
$("#open, #openBG").delay(500).hide();
setTimeout(function () {
alert("HEY!");
}, 800);
});
});
});
});
http://jsfiddle.net/hausmaster/ED4WK/1/#run
非常感谢! :)
答案 0 :(得分:1)
如果我已正确理解您的问题,以下是否适用于您?
$("#box").click(function () {
$("#brief").animate({bottom: "0px",}, 1500).animate({height: "0px"}, 1500);
$("#open, #openBG").delay(3500).fadeOut(0);
});
通过在jQuery中按顺序添加事件,后者在上一个事件结束后开始。
旁注:greenSock的TweenMax应该做一个很好的技巧。在定时动画时,特别是在相同和/或不同的元素上处理时更容易。如果您需要了解更多信息,请与我们联系。