有没有办法将消息从全局页面发送到特定选项卡?
我目前正在做的是,在创建选项卡时,注入的脚本会创建一个唯一的 ID,并将带有此编号的消息发送到全局页面,全局页面会保存此编号。
如果全局页面需要将一些数据发送到选项卡(即: tab #3),则全局页面将向所有选项卡“广播”一条消息,并将该编号#3作为传递给选项卡的数据的一部分(遍历所有选项卡并发送一个消息发送到每个选项卡)。
有没有像 Chrome: (ie: chrome.tabs.sendRequest(tabID, {action: 'respond', params:[channel,msg,async]});)这样的东西?
现在我正在做的是在注入的脚本端,每个脚本都有一个监听器来捕捉这个消息。如果内容脚本唯一编号等于全局页面发送的编号,则此消息是给它的,否则doNothing。
在 Safari 中是否有更简单更优雅的方法来做到这一点?