当前位置: Chrome教程 > tampermonkey > 阅读正文

Tampermonkey开发者文档

2021.3.20.   1431 次   2456字

官网文档链接, 点击这里

可以看到, 它的文档主要有 2 部分组成, 分别是脚本头API

当你新建一个脚本时, 可以也可以看到它清晰的分成2部分.

// ==UserScript==
// @name         New Userscript
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  try to take over the world!
// @author       You
// @match        https://www.52dixiaowo.com/
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    // Your code here...
})();

Script Header : 脚本头

它是由 // ==UserScript== 开始

到 // ==/UserScript== 结束的标签构成, 标签中间是一些定义的脚本头

以下仅简略介绍, 点击可跳转到官网文档位置

@name脚本的名称
@namespace脚本的命名空间
@version脚本版本
@author脚本作者
@description简短而有意义的描述
@homepage, @homepageURL, @website and @source在选项页面上使用的作者主页,从脚本名称链接到给定页面。请注意,如果@namespace标签以‘http://’’开头,它的内容也将用于此
@icon, @iconURL and @defaulticon脚本图标在低分辨率。
@icon64 and @icon64URL这个脚本图标,64 × 64像素。如果这个标签,但是@icon是给定的@icon图像将在一些地方缩放在选项页
@updateURL用户脚本的更新URL。
注意:需要一个@version标记来进行更新检查
@downloadURL定义当检测到更新时将从其中下载脚本的URL。如果使用值none,则不会执行更新检查
@supportURL定义用户可以在其中报告问题并获得个人支持的URL
@include匹配能执行此脚本的URL, 支持通配符 *, 比如 https://*
注意:URL中不可带参数,
@match匹配一个脚本能执行的URL地址, 比如https://www.52dixiaowo.com
@exclude排除一个被@include或者@match标签中的URL
@require引入一个Script文件, 此文件URL必须存在
@resource预加载脚本可以通过GM_getResourceURL和GM_getResourceText访问的资源
@connect这个标记定义域(没有顶级域),包括允许GM_xmlhttpRequest检索的子域
@run-at定义脚本被注入的时刻。与其他脚本处理程序不同,@run-at定义了脚本想要运行的第一个可能时刻。这意味着可能会发生这样的情况,使用@require标记的脚本可能在已经加载文档之后执行,因为获取所需的脚本花费了那么长时间。无论如何,在给定注入时刻之后发生的所有DOMNodeInserted和DOMContentLoaded事件都会被缓存,并在注入脚本时交付给脚本
@grant@grant用于将GM_*函数、unsafeWindow对象和一些功能强大的窗口函数列入白名单。如果没有提供@grant标记,TM猜测脚本的需求
@antifeature这个标签允许脚本开发人员公开他们是否在为他们的脚本赚钱。例如,它是GreasyFork所要求的
@noframes这个标记使脚本在主页上运行,而不是在iframes上运行
@unwrap这个标签被忽略,因为它在谷歌铬/铬是不需要的
@nocompat目前,TM试图通过寻找@match标签来检测一个脚本是否在了解谷歌Chrome/Chromium的情况下编写,但并不是每个脚本都使用它。这就是为什么TM支持这个标签来禁用所有在运行Firefox/Greasemonkey脚本时可能需要的优化。要使这个标记保持可扩展,您可以添加脚本可以处理的浏览器名称

API : 应用程序接口

本篇完,还有疑问?

加入QQ交流群:11500065636 IT 技术交流群