如何从通过后台页面生成的桌面通知打开浏览器窗口?

时间:2011-09-02 09:05:35

标签: google-chrome google-chrome-extension

我构建了一个简单的chrome应用程序,它有一个后台页面,可在新文章可用时显示桌面通知。

如果用户在浏览器窗口打开时点击通知,那么他们将被带到新的文章页面,一切都与世界一致。

但是,如果显示通知时浏览器已关闭,则href不会打开浏览器。我也试图捕获点击并设置一个window.open,但这也不起作用。

顺便说一句,如果我可以查看我的应用程序的实例是否已经打开并且在点击通知时使用该窗口/选项卡,那也是很好的,但这是第一个问题的次要因素。

任何帮助都会很棒!

由于

2 个答案:

答案 0 :(得分:2)

检查镀铬窗口是否打开。如果在新选项卡中打开创建,则打开新窗口。

chrome.windows.getCurrent(function(currentWindow) {
  if (currentWindow != null) {
    return chrome.tabs.create({
      'url': url
    });
  } else {
    return chrome.windows.create({
      'url': url,
      'focused': true
    });
  }
});

答案 1 :(得分:0)

您是否尝试过使用Chrome API创建一个窗口然后选项卡?例如:

linkDOM.addEventListener('click', function() {
  chrome.windows.create({url: 'http://someurl.com'});
}, false);

我通常在以编程方式从扩展程序页面打开链接时执行上述操作。