代码拉取完成,页面将自动刷新
首先来看看脚本的内容,上面是一大排注释,这些注释可以非常有用的,它表明了脚本的各个属性。下面来简单介绍一下。
属性名 作用
name 油猴脚本的名字
namespace 命名空间,类似于Java的包名,用来区分相同名称的脚本,一般写成作者名字或者网址就可以了
version 脚本版本,油猴脚本的更新会读取这个版本号
description 描述,用来告诉用户这个脚本是干什么用的
author 作者名字
match 只有匹配的网址才会执行对应的脚本,例如 * 、 http://* 、 http://www.baidu.com/*等,参见 谷歌开发者文档
grant 指定脚本运行所需权限,如果脚本拥有相应的权限,就可以调用油猴扩展提供的API与浏览器进行交互。如果设置为 none 的话,则不使用沙箱环境,脚本会直接运行在网页的环境中,这时候无法使用大部分油猴扩展的API。如果不指定的话,油猴会默认添加几个最常用的API
require 如果脚本依赖其他js库的话,可以使用require指令,在运行脚本之前先加载其他库,常见用法是加载jquery
connect 当用户使用 GM_xmlhttpRequest 请求远程数据的时候,需要使用connect指定允许访问的域名,支持域名、子域名、IP地址以及 * 通配符
updateURL 脚本更新网址,当油猴扩展检查更新的时候,会尝试从这个网址下载脚本,然后比对版本号确认是否更新
下面简单介绍一下grant指令那里可以填写的一些权限,详情请查看 油猴脚本文档 。这里就简单介绍几个常用的,可以调用的函数全部以GM_作为开头。
权限名 功能
unsafeWindow 允许脚本可以完整访问原始页面,包括原始页面的脚本和变量。
GM_getValue(name,defaultValue) 从油猴扩展的存储中访问数据。可以设置默认值,在没成功获取到数据的时候当做初始值。如果保存的是日期等类型的话,取出来的数据会变成文本,需要自己转换一下。
GM_setValue(name,value) 将数据保存到存储中
GM_xmlhttpRequest(details) 异步访问网页数据的API,这个方法比较复杂,有大量参数和回调,详情请参考官方文档。
GM_setClipboard(data, info) 将数据复制到剪贴板中,第一个参数是要复制的数据,第二个参数是MIME类型,用于指定复制的数据类型。
GM_log(message) 将日志打印到控制台中,可以使用F12开发者工具查看。
GM_addStyle(css) 像网页中添加自己的样式表。
GM_notification(details, ondone), GM_notification(text, title, image, onclick) 设置网页通知,请参考文档获取用法。
GM_openInTab(url, loadInBackground) 在浏览器中打开网页,可以设置是否在后台打开等几个选项
还有一些API没有介绍,请大家直接查看官方文档吧。
// ==UserScript==
// ==UserScript==
// @name 本地编译版本
// @namespace http://tampermonkey.net/
// @version 1.1
// @description try to take over the world!
// @author You
// @match *://*
// @include *
// @connect *
// @icon data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==
// @run-at document-start
// @require https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.min.js
// @require https://cdn.bootcdn.net/ajax/libs/toastr.js/2.1.3/toastr.min.js
// @resource toastr_css https://cdn.bootcdn.net/ajax/libs/toastr.js/2.1.3/toastr.min.css
// @grant GM_log
// @grant GM_info
// @grant GM_addStyle
// @grant GM_download
// @grant GM.getValue
// @grant GM_getValue
// @grant GM.setValue
// @grant GM_setValue
// @grant unsafeWindow
// @grant GM.openInTab
// @grant GM_openInTab
// @grant GM.listValues
// @grant GM_listValues
// @grant GM.deleteValue
// @grant GM_deleteValue
// @grant GM.xmlHttpRequest
// @grant GM_xmlhttpRequest
// @grant GM.getResourceUrl
// @grant GM.notification
// @grant GM_setClipboard
// @grant GM.setClipboard
// @grant GM_getResourceURL
// @grant GM_getResourceText
// @grant GM_registerMenuCommand
// @grant GM_unregisterMenuCommand
// @require file:///C:/Users/12651/WebstormProjects/monkey-script/dist/super-tool.user.js
// @require file:///Users/qiongli/WebstormProjects/monkey-script/dist/super-tool.user.js
// ==/UserScript==
油猴可以 // @require ... 的方法引用外部js文件,如果要引用本地文件,需要在浏览器插件设置中允许油猴访问文件URL,步骤
在浏览器地址栏输入:chrome://extensions(chrome用户)、edge://extensions(用户Edge)
找到Tampermonkey,点详细信息,打开允许访问文件 URL
在油猴中新建一个脚本,在前面添加你引用的本地文件的路径,注意路径前面要加file://下面的默认代码就可以删了:
这时候就可以在IDE中愉快地写代码啦~
一键安装脚本:方式2
只要你的地址结尾为 .user.js 并能正常访问就能使用 GM 一键安装了。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。