Javascript 如何在chrome扩展中从开场白接近事件?
我当时正在调查和阅读这方面的资料,却找不到应该怎么做 我正在开发一个chrome扩展,以供参考文档 因此,我想创建一个弹出窗口,并在它关闭时进行监听,如下面的代码段所示(这不起作用)Javascript 如何在chrome扩展中从开场白接近事件?,javascript,browser,google-chrome-extension,Javascript,Browser,Google Chrome Extension,我当时正在调查和阅读这方面的资料,却找不到应该怎么做 我正在开发一个chrome扩展,以供参考文档 因此,我想创建一个弹出窗口,并在它关闭时进行监听,如下面的代码段所示(这不起作用) 关于如何做才是最好的方法,有什么建议吗?订阅chrome.windows.onRemoved事件会起作用,但除了关闭的范围之外,我找不到更好的方法来识别弹出id chrome.windows.getCurrent(function () { chrome.windows.create({ u
关于如何做才是最好的方法,有什么建议吗?订阅
chrome.windows.onRemoved
事件会起作用,但除了关闭的范围之外,我找不到更好的方法来识别弹出id
chrome.windows.getCurrent(function () {
chrome.windows.create({
url: "http://www.google.com",
type: "popup",
width: 640,
height: 800
}, function(w) {
chrome.windows.onRemoved.addListener(function (wIndex) {
if (wIndex === w.id) {
console.log("hey");
}
});
});
});
您可以使用变量跟踪弹出窗口id,并在
chrome.windows.onRemoved
listener中检查该变量,因此您不必每次都添加和删除侦听器:
var myPopupId;
chrome.windows.create({
url: "http://www.google.com",
type: "popup",
width: 640,
height: 800
}, function(w) {
myPopupId = w.id;
}
);
chrome.windows.onRemoved.addListener(function(windowId){
if (windowId == myPopupId){
console.log("hey");
}
});
请参阅chrome.windows API的文档:window参数不是DOM窗口。鉴于您只能关闭窗口一次,您应该在检测到窗口关闭时删除侦听器。
var myPopupId;
chrome.windows.create({
url: "http://www.google.com",
type: "popup",
width: 640,
height: 800
}, function(w) {
myPopupId = w.id;
}
);
chrome.windows.onRemoved.addListener(function(windowId){
if (windowId == myPopupId){
console.log("hey");
}
});