一、背景
得空学一下插件的编写Chrome Extensions。在GitHub找一些例子来看看,不过大多数都还是V2的,有些写法已经过时了,用不了。必须得对着文档来进行修改才行
练习的例子上,想写一个右键菜单,显示本机ip地址的跳转入口,用了js的跳转方法window.open
// 点击地址事件处理
function ipAddressClicked(response) {
// window.open("https://www.baidu.com/s?wd=ip");
// chrome.windows.create(url:"https://www.baidu.com/s?wd=ip")
chrome.tabs.create({
url: 'https://www.baidu.com/s?wd=ip'
});
}
竟然不行,报错如下
Error in event handler: ReferenceError: window is not defined
二、解决
搜索引擎找来找去,都没找到有人遇到类似的问题,只能又重新回到官方文档上去看了。发现可以通过两种形式来实现我想打开窗口的操作。
1、打开新窗口 chrome.windows
2、打开标签页 chrome.tabs
window.open在V2版本的时候是可以的,也是写在background.js上调用,但是到了V3就不行了,可能是禁用了,或者统一入口,不至于混乱啥的,如果知道是在哪有说明这个情况的,也可以留言给博主噢~