我在特定网址上加载了两个greasemonkey脚本。在第一个GM脚本完成构建页面元素之前,如何确保我的第二个GM脚本不会加载。另外,我如何控制GM脚本加载/运行的顺序?
答案 0 :(得分:1)
在GreaseMonkey“管理用户脚本”UI中选择脚本名称,然后按住Alt键并按向下键直到最后一次。
实际上该UI中有一条提示消息
用鼠标拖放或按 Alt-Up / Alt-Down重新排序脚本 这个清单
答案 1 :(得分:1)
S.Mark described如何在Greasemonkey脚本管理界面中管理执行顺序,这是其中的一部分。但是无法保证脚本1在脚本2开始之前完成对DOM的所有操作。
如果脚本2依赖于脚本1的操作,则必须对其进行处理。
一种方法:让脚本2检查DOM是否有脚本1更改的某些状态(表示脚本1效果已完成)。在脚本2中,使用window.setTimeout()保持递归循环并定期检查信令状态,然后在条件满足后突破并开始脚本2的主要工作。
另一种方法:将两个脚本合并为一个,并适当地排序代码块。