Tampermonkey 高级API的使用 附Demo

在Tamermokeny中编辑脚本可以很容易地控制自己的网页

处理一般性的操作外,如更换问题,图片,注入样式和脚本外

如果我们要做更多 这就需要使用Tamermokey提供的应用程序接口, 即高级API

unsafeWindow

unsafeWindow 对象提供权限访问页面的js函数和变量

向document中添加样式可以使用

GM_addStyle(css)

// @grant        GM_addStyle

GM_addStyle(`body{color:red},p{color:blue}`)

 

GM_*funtion 提供了浏览器级别的存储方式 具体方式如下

 

GM_deleteValue(name)

删除‘name’ 从storage里

GM_listValues()

列出storage中的所有name

GM_setValue(name, value)

设置‘name‘ 的值到storage中

GM_getValue(name, defaultValue)

从storage中获取‘name’的值

 

// @grant        GM_setValue
// @grant        GM_getValue
// @grant        GM_deleteValue
// @grant        GM_listValues

GM_setValue('time', '2019年10月23日15:08:15')
console.log('获取time',GM_getValue('time')
GM_deleteValue('name')
console.log('获取time',GM_getValue('time')
GM_setValue('time', '2019年10月23日15:08:15')
console.log('GM_listValues',GM_listValues())

 

如果想要打开一个新的Tab页 可以使用

 

GM_openInTab(url, options), GM_openInTab(url, loadInBackground)

使用参数url打开一个新的tab,options可以是以下值

active 决定新的tab是否被聚焦,聚焦的意思是直接显示
insert 插入一个新的tab在当前的tab后面
setParent 在tab关闭后重新聚焦当前tab
另外,新的选项卡将被添加。loadinbackground具有与active相反的含义,并被添加以实现Greasemonkey 3.x兼容性。如果未指定“活动”或“加载后台”,则选项卡将不会聚焦。此函数返回一个具有函数close、侦听器onclosed和一个名为closed的标志的对象。

// @grant        GM_openInTab

GM_openInTab('https://fizzz.blog.csdn.net/', { active: true, insert: true, setParent :true }) // 打开新的tab

 

 

 

你可能感兴趣的:(脚本,Tampermonkey)