我们在写油猴儿脚本的时候, 设置界面有一个脚本运行时期选项, 下拉选项如下图, 那么这几个选项有何区别呢? 我们来一探究竟吧;)
官方文档介绍: @run-at
笔者翻译如下:
定义脚本被注入的时机. 与其他脚本处理程序相反, @run-at 定义了脚本想要运行的第一个可能时刻。这意味着可能会发生如下情况: 使用@require标签引用的资源可能在当前脚本加载之后才执行引用操作, 导致加载require配置的脚本需要很长时间. 不管怎样, 在给定注入时刻之后发生的所有DOMNodeInserted和DOMContentLoaded事件都会被缓存并在脚本注入时传递给它.
document-start
脚本在最早的时刻被注入
document-body
当body元素存在时脚本被注入
document-end
脚本在DOMContentLoaded事件发生时或之后被注入
document-idle
脚本在DOMContentLoaded事件发生后被注入. 当没有设置@run-at标签时,会采用该值作为默认值
context-menu
当在浏览器点击鼠标右键时,脚本被注入(只支持桌面版Chrome浏览器)
注: 当该值设置的时候, 所有的@include和@exclude声明会被忽略, 将来可能会有调整.