gpt4 book ai didi

javascript - 修改GM_setValue和GM_getValue用于跨表通信: How to access Firefox Preferences variables?

转载 作者:行者123 更新时间:2023-11-29 16:26:06 32 4
gpt4 key购买 nike

我有一个与我的 GM 用户脚本相关的新问题。

此脚本的目的是从外部域检索数据。我在 Firefox 上的第一次尝试让我设计了一个页面,其中包含要填写的表单和嵌入外部页面的 iframe。通过使用 setInterval 并确定它是顶部窗口还是在 iframe 中,我成功地使用了 GM_setValue 和 GM_getValue 来获取数据。

但是对于 IE (IE7PRO),我发现我能够将我的脚本分成 2 个脚本:一个只处理表单,另一个处理外部域。 IE7PRO 提供可在产品的任何选项卡/页面上检索的等效函数(PRO_getValue 和 PRO_setValue)。唯一的区别是它可以跨选项卡/页面工作,所以我不必在自己的页面上包含 iframe,而且我可以为外部域打开自己的选项卡,这要好大约一百万倍(至少。 ..)!

我在 Firefox 上尝试了同样的方法,但显然没有用。我经历过 documentation of those functions ,并且在 Firefox 中,数据似乎存储在首选项中(关于:配置以访问)。

那么,有没有一种方法可以修改 GM_getValue,为其添加参数,因为值存储在这个模型中:greasemonkey.scriptvals.namespace/script_name.value_name

有没有办法在 Firefox、Greasemonkey 用户脚本/Javascript 中访问首选项的值,语法是什么?

谢谢;-)

最佳答案

如果我对你的问题的理解是正确的,那么你几乎可以做你已经在 IE 中做的事情:在每个选项卡中运行一个用户脚本。

GM_[gs]etValue 跨表和跨页工作。值按用户脚本存储。

所以您需要做的就是在两个选项卡中运行相同用户脚本,并根据对 window.location.href 的检查让它做不同的事情.

关于javascript - 修改GM_setValue和GM_getValue用于跨表通信: How to access Firefox Preferences variables?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6046210/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com