gpt4 book ai didi

javascript - 动画完成后调用函数

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:49:58 24 4
gpt4 key购买 nike

我有 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 是正确的。问题出在 CSS 中。您为 margin 属性设置了过渡。删除它,你的 JS 就可以正常工作了。

关于javascript - 动画完成后调用函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16631883/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com