【发布时间】:2013-05-19 05:58:01
【问题描述】:
我有 2 个功能可以打开和关闭页面上的侧边栏。
function closeSidebar(functionAfterClose) {
var functionAfterClose = functionAfterClose || function() {};
$("#sidebar").removeClass("open");
$("#sidebar").animate({marginLeft: margin*-1},"fast", "swing", functionAfterClose);
$("#dummy-column").animate({marginLeft: margin*-1},"fast", "swing");
}
function openSidebar() {
$("#sidebar").addClass("open");
$("#sidebar").animate({marginLeft:0},"fast", "swing");
$("#dummy-column").animate({marginLeft:0},"fast", "swing");
}
我正在尝试将函数传递给 closeSidebar() 以在关闭动画完成后运行。但它似乎直接运行而不是等待侧边栏动画完成。
closeSidebar(function() {
alert("function called");
$(this).addClass("current");
openSidebar();
});
动画完成后我缺少什么来调用函数?
The jsFiddle - 单击右侧的按钮,它应该动画化,调用函数,然后再次动画化。
【问题讨论】:
标签: javascript jquery animation