首页 > 解决方案 > Tampermonkey 是否可以在不同的网站上共享一个存储空间?

问题描述

类似,但有更多细节。

我现在的方案:

我得到的信息:

标签: cross-domaintampermonkey

解决方案


如 wOxxOm 所述,为了让 2 个域通过 GM 存储 API 共享数据,脚本必须在两个域上运行,例如通过@match.

但是,在 Tampermonkey 中,域将在注入脚本时访问数据。

更新:正如 wOxxOm 所指出的,“ Tampermonkey/Violentmonkey 都提供对真实值的实时访问。他们通过将更改传播到运行此脚本实例的所有选项卡/框架来实现。

您还可以使用GM_addValueChangeListener()来收听对存储的更改。

GM_addValueChangeListener()
将更改监听器添加到存储并返回监听器 ID。
'name' 是观察到的变量的名称。
回调函数的 'remote' 参数显示此值是从另一个选项卡的实例 (true) 还是在此脚本实例 (false) 中修改的。
因此,不同浏览器选项卡的脚本可以使用此功能相互通信。

注意:在 Greasemonkey 和 FireMonkey 中,异步GM.getValue()总是会获取当前最新的数据。


推荐阅读