我缺少对javascript函数流控制的一些基本了解...
我创建了一个jquery幻灯片。节目分为逻辑部分,每个部分由一个函数控制(以后可以轻松添加部分)...
function myslideshow() {
section1();
section2();
section3();
}
每个部分都有由jquery语句,动画,定时内容...等等组成的多个功能。
function section1() { firstPart(); setTimeout('secondPart()',5000); setTimeout('thirdPart()',6000); }
现在这是我的问题...我想在section1()内定义函数“ firstPart(),secondPart(),thirdPart()”。我出于各种原因想要这样做:
因此,我希望将该部分及其所有相应部分保留在该部分中。
我似乎无法使其正常工作……当我在该节内定义“部件”时,所有功能均同时运行。
所以理想情况下,我想拥有的是:
function section1() { firstPart(); setTimeout('secondPart()',5000); setTimeout('thirdPart()',6000); function firstpart(){ //some code here } function secondPart(){ //some code here } function thirdPart(){ //some code here } }
但是再次不能正常解决;实际上它正常工作,我只是没有正确实现它!不知道我是否需要利用函数回调(甚至不知道如何以“可扩展的方式”进行设置)。
另一个需要改进的地方:setTimeouts用于确保secondPart在firstPart之后运行...想知道是否有更好的方法来“等待”上一个函数(带有jquery动画)来完成。
我非常感谢您提供的任何指导。谢谢!
我缺少对javascript函数流控制的一些基本理解。我创建了一个jquery幻灯片。演出分为逻辑部分,每个部分都由一个...
您不正确地调用“ setTimeout()”:
一种方法是创建一个匿名“部分”的列表,然后只从控制函数中依次调用它们。每个动画列表的最终回调将依次调用下一部分。这是一个例子: