Javascript 如何从新创建的选项卡访问safari扩展方法?
我正在开发一个safari扩展。我成功地创建了一个全局页面,该页面对工具栏按钮的按下做出反应。此操作将在活动窗口中打开一个新选项卡 我现在的问题是:如何从新打开的浏览器选项卡中的全局页面访问定义的变量,该选项卡包含扩展名中的内容html文件?是否可以像popover那样共享变量和函数Javascript 如何从新创建的选项卡访问safari扩展方法?,javascript,safari-extension,Javascript,Safari Extension,我正在开发一个safari扩展。我成功地创建了一个全局页面,该页面对工具栏按钮的按下做出反应。此操作将在活动窗口中打开一个新选项卡 我现在的问题是:如何从新打开的浏览器选项卡中的全局页面访问定义的变量,该选项卡包含扩展名中的内容html文件?是否可以像popover那样共享变量和函数 safari.extension.globalPage.myFunction()不工作 谢谢 sn3ek内容脚本只能通过与全局页面通信 content.js global.js safari.self.addEve
safari.extension.globalPage.myFunction()代码>不工作
谢谢
sn3ek内容脚本只能通过与全局页面通信
content.js
global.js
safari.self.addEventListener('message', handleMessage, false);
// Send a message to the global page
safari.self.tab.dispatchMessage('requestVariables');
// Receive a message back from the global page
function handleMessage(msg) {
if (msg.name === 'returnVariables') {
console.log(msg.message);
}
}
safari.application.addEventListener('message', handleMessage, false);
// Receive a message from the injected script
function handleMessage(msg) {
if (msg.name === 'requestVariables') {
var message = {prop: 'val'};
safari.application.activeBrowserWindow.activeTab.page.dispatchMessage('returnVariables', message);
}
}