我的问题有点类似于this one.我们想知道是否有一种方法可以确定是否所有JavaScript都已完成(所以没有javascript正在运行)。我们有很多东西在页面的onload事件后超时运行,所以即使在页面加载后,也可能会发生几秒钟的事情。出于一大堆理由,主要涉及管理的要求,我们需要知道所有这些脚本何时完成运行。有一个任意的数量,所以一个通用的解决方案会很棒。确定javascript是否已完成
3
A
回答
2
我能想到的最快和最容易的是创建一系列布尔值,告诉您哪些进程已完成。方法结束后,让它将其中一个变量设置为true。当他们都是真实的,你知道它已经完成加载。
0
也许这些脚本在完成后会调用imDone()
函数。
2
您可以创建一个excuteWithNotify(functionToEexcute)
函数。它将接收函数作为参数执行,执行它,然后它将适当地设置标志。
+0
非常有趣的解决方案。并且很容易执行。 – Andrew 2010-06-07 00:37:43
1
我会把所有的JS文件放到一个文件中。然后在末尾使用布尔方法。
相关问题
- 1. 确定AutoBoxing是否已完成
- 2. 如何确定Visual Basic中的“WriteAllText”是否已成功完成?
- 3. 如何确定定时任务是否已经完成
- 4. JavaScript代码完成是否正确?
- 5. 如何确定是否SkinnableComponent已完成添加部件?
- 6. 如何确定文件夹是否已完成复制c#
- 7. 如何确定文件是否已完成python下载
- 8. 如何确定文件是否已完成下载
- 9. 确定dijit的DOM是否已完成加载
- 10. 如何确定html div元素是否已完成加载
- 11. 如何确定dojo网格是否已完成加载?
- 12. 如何确定装配是否已经完成?
- 13. 确定mdworker(Spotlight)是否已完成第一次扫描
- 14. WF:确定工作流程是否已完成
- 15. 确定ping是否已成功发送
- 16. 如何确定AVM1Movie是否完成?
- 17. 如何确定过程是否完成?
- 18. 锁是否正确完成
- 19. 如何确定是否已在MongoDB中完成完整集合扫描
- 20. 确定成员是否在(Javascript)超类
- 21. javascript代码,以确保iframe是否已完全加载
- 22. 如何检查所有任务是否已正确完成?
- 23. 如何检查location.href是否已完成?
- 24. 检查Elasticsearch是否已完成索引
- 25. 查找CountDownTimer是否已完成?
- 26. 检查qprocess是否已完成
- 27. JSON响应是否已经完成?
- 28. 检查SCNNode SCNAction是否已完成
- 29. 检查输入是否已完成
- 30. 如何检查$ compile是否已完成?
这就是我的想法。为了实现这个目标,所有这些页面上的所有功能都会变得烦人,但是噢。 C'Est la vie d'un programmeur! – Anthony 2010-06-07 00:20:00
@塞尔吉奥的解决方案非常简单,它可以让您避免更改所有功能。基本上,任何时候你想要执行一个高优先级的函数,都可以通过一个特殊的包装函数来运行它(他称之为executeWithNotify(),但你可以任意调用它,该函数将一个公共变量设置为'isRunning = true',当它开始时为'isRunning = false',所有你需要做的就是通过这个来运行你的高优先级脚本,并改变你的低优先级脚本来检查'isRunning'。 – Andrew 2010-06-07 00:44:46
Sergio函数的问题我喜欢它)是假定wrapper函数知道另一个进程何时结束,它假定进程在另一个方法返回时是同步的,如果你的包装方法调用setTimeout等,并导致执行发生包装函数将会返回错误结束的过程 – kemiller2002 2010-06-07 01:11:19