我在JavaScript中有以下幾種方法:等待動畫功能在javascript
Controller.prototype.changeScene = function (curScene, newScene) {
sf.scene.hide(curScene);
sf.scene.show(newScene, curScene);
sf.scene.focus(newScene);
};
而在另一個JS類:
Test.prototype.handleHide = function() {
alert("SceneDialog.handleHide()");
$(".screenOverlay").fadeOut("slow");
$(".dialogBox").fadeOut("slow");
};
sf.scene.hide()
調用handleHide
方法。在handleHide
有一些動畫,但沒有顯示。控制器不會等待它完成。
我試過$.when(sf.scene.hide()).done()
沒有任何運氣。
有什麼建議嗎?
您正在使用哪些動畫功能? 'animate'? 「fadeout」和「fadein」在完成時有回調函數 – dm03514
您還在等待完成哪些動畫?正如所寫的,兩個fadeOut都會執行,並立即返回到下一個語句。 – Alan
http://www.learningjquery.com/2009/01/quick-tip-prevent-animation-queue-buildup –