thi*_*y93 9 javascript jquery jquery-animate
基本上我希望能够在$ .holdTillFinished()方法中包装任何命令,该方法不允许执行继续,直到指定的方法/ jquery动画执行完毕.
我怀疑这在javascript中可能很难甚至不可能,但我希望有人知道.
我不想听到如何将回调传递给动画以使其运行完整或其他任何类似的东西.
我真的想知道这样的事情是否可能以及如何去做.
如果任何人都知道一个能够排队用户定义的方法和动画的好队列插件,那就不会发生这种情况,那也很酷.我真正想要的是一种延迟执行的方法.(同时仍允许动画功能)
bob*_*nce 10
我怀疑这在javascript中可能很难甚至不可能
你的怀疑是正确的.像动画,用户输入循环和'async = true'这样的方法XMLHttpRequests 必须将控制权返回给浏览器才能继续,并且浏览器无法恢复控制,直到返回每个嵌套级别的函数调用.这意味着你的所有代码,包括调用'holdTillFinished()'的函数都必须放松:因此'holdTillFinished()'是不可能的.
其他语言具有流量控制功能,允许您有效地执行异步过程,使调度程序看起来是同步的,反之亦然.最着名的是线程和延续.JavaScript没有这些功能,所以你能做的最好的就是超时和回调.
(将回调定义为内联函数以获取对闭包函数在闭包中的变量的访问权限至少会带来一些痛苦;其他一些语言必须开始将对象属性中的每个封闭状态包裹起来以实现此目的.)
| 归档时间: |
|
| 查看次数: |
13756 次 |
| 最近记录: |