版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
在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