是否可以在Google Chrome扩展程序中确定标签的开启者?

joe*_*lpt 7 google-chrome google-chrome-extension

我正在寻找一种方法来确定Google Chrome扩展程序中给定标签的开启者(父标签).

我已经查看了Tab的文档,但似乎没有任何可以产生这些信息的东西.http://code.google.com/chrome/extensions/tabs.html

我已经尝试将这个内容脚本注入页面(我想我可以将值传递给我的后台页面):

alert(window.opener);
Run Code Online (Sandbox Code Playgroud)

..但它只是产生null.

到目前为止,我提出的最好的方法是跟踪当前关注的选项卡,每当创建新选项卡时,只需假设关注选项卡是新选项卡的开启者/父级.我相信,由于背景标签很少(允许)打开新页面,因此事实上大部分时间都会正确识别父标签.但是,它似乎有点笨拙并且有时可能不准确 - 例如,如果另一个扩展程序打开了一个新选项卡,此方法可能会错误地标识新选项卡的开启者.

joe*_*lpt 7

更新:现在可以使用新添加的webNavigation API,特别是通过挂钩onCreatedNavigationTarget事件,可靠地确定Chrome扩展中的选项卡开启选项卡.

https://code.google.com/chrome/extensions/trunk/webNavigation.html