7

我的 Chrome 扩展大量使用了 webkitNotifications。我想切换到新的丰富通知(chrome.notifications),但这些通知尚未在所有平台上可用,目前仅在 beta 通道及更高版本中编写。如果丰富的通知不可用,则应使用 webkitNotifications 作为后备。因此,我正在寻找实现这一点的最佳解决方案:

if(richNotificationsAvailable())
   chrome.notifications.create(...);
else
   webkitNotifications.createNotification(...).show();

我尝试检查chrome.notifications.create未定义,但它甚至是为 Chrome 27 定义的,并在chrome://flags.

4

2 回答 2

5

要检测是否有rich notifications,目前最可靠的方法是测试是否存在webkitNotifications.createHTMLNotification- 如果该函数未定义,则rich notificationshave been switched on

于 2013-05-28T04:45:52.307 回答
0

只需使用以下代码:

if (webkitNotifications && webkitNotifications.createHTMLNotification) {
    //HTML notifications
} else if (chrome.notifications && chrome.notifications.create) {
    //Rich notifications
}
于 2014-11-12T01:29:07.147 回答