TamperMonkey油猴/暴力猴浏览器脚本插件中文网(原TMchina)

打印 上一主题 下一主题

油猴脚本开发中文文档合集第一节Userscript Header

[复制链接]
跳转到指定楼层
楼主
发表于 2019-12-13 08:21:23 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

马上注册,结交更多网友,浏览器插件/脚本不再愁!

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
本帖最后由 疯子先生 于 2019-12-13 08:54 编辑
文档介绍如何使用Tampermonkey API,以及与Geasemonkey的不同之处。此部分为Userscript Header部分

USERSCRIPT HEADER




TM中文网 - 脚本安装指南

1、本站ZIP导入包一般命名类似为tampermonkey.cn_xxx_script.zip,一般无需解压直接导入(导入不成功则解压看是否里面还有ZIP文件,有的话再导入)。
2、JS版为代码版,可在油猴/暴力猴控制台直接添加脚本的方式把JS文件内的代码复制粘贴进去,保存即可成功安装脚本。
3、脚本导入的相关教程《油猴脚本导入教程》/《暴力猴脚本导入教程


回复

使用道具 举报

23#
 楼主| 发表于 2019-12-13 08:52:59 | 只看该作者
@resource

预加载可以通过脚本通过GM_getResourceURL和GM_getResourceText访问的资源。

  1. // @resource icon1 http://www.tampermonkey.net/favicon.ico
  2. // @resource icon2 /images/icon.png
  3. // @resource html http://www.tampermonkey.net/index.html
  4. // @resource xml http://www.tampermonkey.net/crx/tampermonkey.xml
  5. // @resource SRIsecured1 http://www.tampermonkey.net/favicon.ico#md5=123434...
  6. // @resource SRIsecured2 http://www.tampermonkey.net/favicon.ico#md5=123434...;sha256=234234...
复制代码


允许多个标记实例。
回复

使用道具 举报

22#
 楼主| 发表于 2019-12-13 08:47:24 | 只看该作者
@nocompat

目前,TM试图通过查找@match标记来检测脚本是否是在Google Chrome/Chrome的知识中编写的,但并不是每个脚本都使用它。这就是为什么TM支持这个标签来禁用运行为Firefox/Greasemonkey编写的脚本所需的所有优化。要保持此标记可扩展,可以添加可由脚本处理的浏览器名称。

  1. // @nocompat Chrome
复制代码
回复

使用道具 举报

21#
 楼主| 发表于 2019-12-13 08:46:56 | 只看该作者
@unwrap

这个标签被忽略,因为Google Chrome/Chromium不需要它。
回复

使用道具 举报

20#
 楼主| 发表于 2019-12-13 08:46:28 | 只看该作者
@noframes

此标记使脚本在主页面上运行,但不在iframe上运行。
回复

使用道具 举报

19#
 楼主| 发表于 2019-12-13 08:44:55 | 只看该作者
@grant

@grant用于白名单GM_ux函数、unsafeWindow对象和一些强大的窗口函数。如果没有给@grant标记,TM会猜测脚本需要什么。

  1. // @grant GM_setValue
  2. // @grant GM_getValue
  3. // @grant GM_setClipboard
  4. // @grant unsafeWindow
  5. // @grant window.close
  6. // @grant window.focus
复制代码


由于关闭和聚焦选项卡是一个强大的功能,因此还需要将其添加到@grant语句中。



如果@grant后跟“none”,沙盒将被禁用,脚本将直接在页面上下文中运行。在此模式下,没有GM_u*函数,但GM_uinfo属性将可用。

  1. // @grant none
复制代码
回复

使用道具 举报

18#
 楼主| 发表于 2019-12-13 08:44:09 | 只看该作者
@run-at

定义脚本被注入的时刻。与其他脚本处理程序相反,@run at定义了脚本要运行的第一个可能时刻。这意味着,使用@require标记的脚本可能会在加载文档后执行,因为获取所需脚本花费了很长时间。无论如何,在给定的注入时刻之后发生的所有DOMNodeInserted和DOMContentLoaded事件都将被缓存,并在注入时传递给脚本。

  1. // @run-at document-start
复制代码


脚本将尽快注入。

  1. // @run-at document-body
复制代码


如果主体元素存在,脚本将被注入。

  1. // @run-at document-end
复制代码


将在发送DOMContentLoaded事件时或之后注入脚本。

  1. // @run-at document-idle
复制代码

将在调度DOMContentLoaded事件后注入脚本。如果没有给出@run at标记,这是默认值。

  1. // @run-at context-menu
复制代码


如果在浏览器上下文菜单中单击脚本(仅限基于桌面Chrome的浏览器),脚本将被注入。

注意:如果使用此值,则所有@include和@exclude语句都将被忽略,但将来可能会发生变化。

回复

使用道具 举报

17#
 楼主| 发表于 2019-12-13 08:40:28 | 只看该作者
@connect

This tag defines the domains (no top-level domains) including subdomains which are allowed to be retrieved by GM_xmlhttpRequest

  1. // @connect <value>
复制代码


<value>可以有以下值:

像tampermonkey.net这样的域(这也允许所有子域)
  • 子域,即safari.tanpermonkey.net
  • self列出脚本当前运行的域
  • localhost访问localhost
  • 1.2.3.4连接到IP地址
  • *

如果无法声明用户脚本可能连接到的所有域,则最好执行以下操作:

声明所有已知或至少所有可能由脚本连接的公共域。这样,大多数用户都可以避免确认对话框。



另外在脚本中添加“@connect*”。通过这样做,Tampermonkey仍然会询问用户是否允许下一个连接到未提及的域,但也会提供一个“总是允许所有域”按钮。如果用户单击此按钮,则将自动允许所有未来的请求。



用户还可以通过在“脚本设置”选项卡的用户域白名单中添加“*”来白名单所有请求。



笔记:

同时,将检查初始和最终的URL!

为了向后兼容Scriptish@domain标记也会被解释。

允许多个标记实例。
回复

使用道具 举报

16#
 楼主| 发表于 2019-12-13 08:38:02 | 只看该作者
@require

指向在脚本本身开始运行之前加载并执行的JavaScript文件。

注意:通过@require加载的脚本及其“use strict”语句可能会影响userscript的strict模式!
  1. // @require https://code.jquery.com/jquery-2.1.4.min.js
  2. // @require https://code.jquery.com/jquery-2.1.3.min.js#sha256=23456...
  3. // @require https://code.jquery.com/jquery-2.1.2.min.js#md5=34567...,sha256=6789...
复制代码


回复

使用道具 举报

15#
 楼主| 发表于 2019-12-13 08:37:38 | 只看该作者
@exclude

排除url,即使它们包含在@include或@match中。



允许多个标记实例。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

最近更新的脚本

免责声明

油猴中文网所发布的一切浏览器脚本及应用的帖子仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该应用,请支持开发者,若有VIP相关脚本,我们推荐您购买VIP得到更好的官方服务。(如有侵犯了您权益的应用请点此处联系我们处理

联系我们|Archiver|小黑屋|sitemap|, Processed in 0.034920 second(s), 16 queries , File On.   
快速回复 返回顶部 返回列表