Tampermonkey 高级API的使用 附Demo

近期博主在GitChat上举办了一场 彻底玩转Tampermonkey的Chat 欢迎各位前来捧场. 报名地址

使用 Tampermonkey 编写高级跨网站自动化任务脚本

 

 

 

在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

 

 

 

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

拿我格子衫来

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值