我又遇到了问题..
$(".menu-container").animate({top:"25px"},
function() {
$(".menu-container").animate({top:"-900px"});
$(".windows-container").animate({top:"-730px"});
});
$(".menu-container").hide(function(){
$(".webPageFrame").attr("src","");
addMenuButtons('main-menu',MenuTitleMain);
addLastMenuButtons('last-menu','Login');
menuBordersAndCorners('main-menu');
lastMenuBordersAndCorners('last-menu');
});
$(".menu-container").show();
$(".menu-container").animate({top:"0px"});
我认为最后两行没有执行..我还没有看过.menu-container而且没有动画到顶部:0px;
答案 0 :(得分:2)
在这部分:
$(".menu-container").animate({top:"25px"}, function() {
$(".menu-container").animate({top:"-900px"});
$(".windows-container").animate({top:"-730px"});
});
在.animate({top:"-900px"});
排在底部的<{em} 后排队.animate({top:"0px"});
,你需要先将它放在队列堆栈上,如下所示:
$(".menu-container").animate({top:"25px"}, function() {
$(".windows-container").animate({top:"-730px"});
}).animate({top:"-900px"});
目前正在发生的事情:
.menu-container
开始制作动画至top: 25px
.menu-container
队列 top: 0px
动画片.menu-container
完成动画设为top: 25px
然后将top: -900px
动画排队。因此,结果是动画为25,0,然后是-900,因为订单项已插入队列。我仍然不确定hide()
和show()
顺序是你所追求的,但这就是你没有看到该元素的原因,它最终比窗口高出900px :)) p>
更新:根据评论,我认为这更接近你所追求的目标:
$(".menu-container").animate({top:"25px"}, function() {
$(".windows-container").animate({top:"-730px"});
}).animate({top:"-900px"}, function(){
$(".webPageFrame").attr("src","");
addMenuButtons('main-menu',MenuTitleMain);
addLastMenuButtons('last-menu','Login');
menuBordersAndCorners('main-menu');
lastMenuBordersAndCorners('last-menu');
}).animate({top:"0px"});
.hide()
和.show()
(当没有给出持续时间> 0时)没有排队,所以立即发生......一旦它超出900px,这就完成了工作。