如何将JQuery delay
与我自己定义的函数一起使用,伪代码如此?:
$('#foo').slideUp(300).delay(800).myOwnFunction(1,2,3);
function myOwnFunction (a,b,c) {...}
上面的代码不起作用,但是JQuery documentation看起来应该是这样。
答案 0 :(得分:4)
在此处使用setTimeout()
。在动画完成向上滑动后,它将运行包含setTimeout()
的匿名函数,该函数在大约800毫秒后调用您的函数。
$('#foo').slideUp(300, function() {
setTimeout(function() {
myOwnFunction(1, 2, 3);
}, 800);
});
function myOwnFunction(a, b, c) {
alert(a + b + c);
};
下面定义的并不重要,因为它的定义应该被提升到顶部。
答案 1 :(得分:1)
$('#foo')
.slideUp(300)
.delay(800)
.queue(function () {
myOwnFunction(1,2,3);
$(this).dequeue();
});
请参阅: