Javascript Tampermonkey,等待在另一个选项卡os中设置值,以便读取

Javascript Tampermonkey,等待在另一个选项卡os中设置值,以便读取,javascript,greasemonkey,tampermonkey,setvalue,getvalue,Javascript,Greasemonkey,Tampermonkey,Setvalue,Getvalue,我有一个用户脚本,它可以打开另一个选项卡,并在其中运行 我使用GM_setvalue和GM_getvalue在它们之间交换一个值 在main选项卡中,我想暂停代码的执行,直到从另一个选项卡更新值为止 我的第一次也是迄今为止最接近的一次尝试是,我添加了一个while()循环,其中包含一个空命令,用于检查存储的值(如果它仍然设置了默认值)。我的代码确实更改了另一个选项卡中存储的值,但在主选项卡中,代码仍然卡在循环中。对此,我看不出原因 你能帮帮我吗 问候,, polarka您可以在“发件人”选项卡中

我有一个用户脚本,它可以打开另一个选项卡,并在其中运行

我使用GM_setvalue和GM_getvalue在它们之间交换一个值

在main选项卡中,我想暂停代码的执行,直到从另一个选项卡更新值为止

我的第一次也是迄今为止最接近的一次尝试是,我添加了一个while()循环,其中包含一个空命令,用于检查存储的值(如果它仍然设置了默认值)。我的代码确实更改了另一个选项卡中存储的值,但在主选项卡中,代码仍然卡在循环中。对此,我看不出原因

你能帮帮我吗

问候,,
polarka

您可以在“发件人”选项卡中发送一个(当数据更新时),并在“目标”选项卡中添加一个侦听器来侦听该事件。

其他选项卡是否在同一域中?由于我有一个打开另一个选项卡的用户脚本,您是否使用
window.open
打开新选项卡?我使用GM\u openInTab()。抱歉,我没想到会有这么快的响应。请使用
GM\u addValueChangeListener
,自己查找示例。谢谢,我会尝试一下。现在我必须睡觉了。所以,我对脚本进行了更改以实现EventListener。对于事件,它是有效的,谢谢。