2013-03-22 221 views
0

多个单独的窗口可以在Chrome中打开,最后窗口关闭事件侦听器的Chrome浏览器

chrome.windows.onRemoved.addListener(function(windowId){ 
// action 
}); 

以上代码的任何Chrome窗口关闭事件作出响应。 如何检测最后一个窗口关闭事件或最终关闭事件。 如果没有,是否有方法可用于在处理关闭事件之前检查任何铬窗口处于活动状态。

谢谢!

回答

0
var openWindowCount = 0; 

chrome.windows.onCreated.addListener(function(Window window) { 
    ++openWindowCount; 
}); 

chrome.windows.onRemoved.addListener(function(windowId) { 
    if (--openWindowCount == 0) { 
    // this is the last window. 
    } 
); 

未测试。

+0

感谢您的回复,sowbug!如果chrome在最后一次窗口退出后没有在后台运行,那么上面的代码将不起作用。我的要求是这样的,最终退出后用户不会在后台运行chrome。 – 2013-03-23 03:20:28

0

onRemoved:

chrome.windows.onRemoved.addListener(function callback) 

时被移除的窗燃烧(闭合)。

GETALL:

chrome.windows.getAll(object getInfo, function callback) 

获取所有窗口。

chrome.windows.onRemoved.addListener(function() { 
    chrome.windows.getAll(function (windows) { 
     if (windows.length <= 0) { 
      // Write code here 
     } 
    }); 
}); 
+0

请描述您提出的解决方案,而不是仅发布代码。 – 2015-12-08 09:45:10