我尝试在 .animate() 中提供回调函数 (FUNCTIONX),但它会立即触发 - 并且不会等待动画结束。
nav.click(function () {
holder.stop(true, true);
var target = $(this).attr('class');
if (target === 'right') {
var value = current.width();
holder.animate({
right: '+=' + value
}, slideSpeed, FUNCTIONX());
current = current.next();
} else {
var value = current.prev().width();
holder.animate({
right: '-=' + value
}, slideSpeed, FUNCTIONX());
current = current.prev();
}
});
还尝试使用 .promise() (如下)具有相同的效果。
var value = current.width();
holder.animate({
right: '+=' + value
}, slideSpeed);
current = current.next();
nav.promise().done(function() {
alert( 'dupa' );
});
这个动画完成后,幻灯片效果结束后如何运行函数?
最佳答案
FUNCTIONX 在这里立即被调用。尝试删除 ()
。
来自:
holder.animate({
right: '+=' + value
}, slideSpeed, FUNCTIONX());
致:
holder.animate({
right: '+=' + value
}, slideSpeed, FUNCTIONX);
关于javascript - 动画完成后运行函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32594523/