跨浏览器选项卡调用JavaScript函数

kum*_*mar 6 javascript

我有两个浏览器选项卡,tab1和tab2.

我在tab1中有一个名为execute的函数,我想从tab2中的页面调用它.

这是可能的,如果可能的话怎么样?

scu*_*ffe 18

JavaScript 无法在浏览器中执行交叉表脚本(这是一种安全风险).

但是,如果第二个选项卡是通过window.open()调用打开的,并且设置了浏览器设置,以便在新选项卡中打开新的弹出窗口 -然后,"tab1"可以与"tab2"对话

第一个选项卡/窗口被调用opener,因此新选项卡可以使用以下格式调用开启器上的函数:

opener.doSomething();
Run Code Online (Sandbox Code Playgroud)

同样,opener可以通过使用在创建弹出窗口时创建的变量来调用新选项卡/弹出窗口上的函数.

var myPopup = window.open(url, name, features);
myPopup.doStuffOnPopup();
Run Code Online (Sandbox Code Playgroud)