所以我想在.fadeOut()
完成動畫後使用回調函數。我可以用下面的方法成功地做到這一點,沒問題。工作就像我想(HTML和CSS只是一個單一的黑色方形格)jQuery與回調和完成
function fadeOutThing(speed, callback) {
$('div').parent().fadeOut(speed, function() {
if (typeof callback === "function") {
callback();
}
});
}
function OtherThing() {
console.log("hello");
}
fadeOutThing(5000, OtherThing);
我真正想要的是該回調函數有自己的說法,這可能是另一個回調函數,如下所示。問題是,當我這樣做,日誌將顯示之前的動畫完成:Here's the fiddle
function fadeOutThing(speed, callback) {
$('div').parent().fadeOut(speed, function() {
if (typeof callback === "function") {
callback();
}
});
}
function OtherThing(stuff) {
console.log("hello" + stuff); //This displays too soon!
}
fadeOutThing(5000, OtherThing(' stuffsss'));
這究竟是爲什麼?我不瞭解什麼?