我试图用jQuery + JavaScript来实现这一目标:jQuery函数调度功能
我有命令/功能需要在一个序列被调用,在他们之间有一个小的延迟。这些示例包括更改元素的css属性,隐藏另一个元素等。
据我所知,JavaScript没有睡眠功能。所以我想知道如果jQuery有一个插件或支持此功能的东西?
本质上,像$(window).schedule(function() { /* do something here*/ }, 500);
这样的功能会很好。这将把函数推入队列中,并在队列中所有先前的函数执行后立即执行,如果队列中没有函数,则会立即执行。整型参数指定此函数与其之前的函数之间的延迟。
我想我知道如何从头开始建立这个,但我希望有一个插件,因为它可以帮助我避免重新发明轮子。
如果没有..我会建立这个并释放它。 :)
它取决于您的函数,同步或异步... – dashtinejad 2014-08-31 04:37:26
函数应该一个接一个地执行(同步),但是,它们正在执行的“线程”应该是异步的。本质上,这将模拟一个多线程环境,在这个环境中,页面被正常加载/使用,但有一个“后台线程”依次运行这些功能。 – l3utterfly 2014-08-31 04:40:06
应该可以通过内置函数setTimeout和setInterval来实现,或者我错过了什么?您可以使用一些外部状态,如排序队列,以确保事件按顺序完成(尽管它们仍然是异步的并且不会按照您的要求阻止)。 – Shashank 2014-08-31 05:02:28