Javascript Chrome扩展通知不显示contextMessage?

Javascript Chrome扩展通知不显示contextMessage?,javascript,google-chrome-extension,Javascript,Google Chrome Extension,在我的代码中,contextMessage没有显示 我知道它适用于chrome.notifications.create,但是如果我使用它,那么我无法使它在不关闭或单击通知的情况下消失 function Notify(Title, Body, miniMsg, Url, Icon) { var notification = new Notification(Title, { icon: Icon||"Logo.png", body: Body,

在我的代码中,contextMessage没有显示 我知道它适用于
chrome.notifications.create
,但是如果我使用它,那么我无法使它在不关闭或单击通知的情况下消失

function Notify(Title, Body, miniMsg, Url, Icon) {
    var notification = new Notification(Title, {
        icon: Icon||"Logo.png",
        body: Body,
        contextMessage:miniMsg
    });
    notification.onclick = function () {
        window.open(Url);
    }
}

谢谢

答案很简单:兼容性

据介绍,如果没有
webkit
前缀,您正试图使用Chrome不支持的功能。对于Google Chrome扩展,建议使用

使用
chrome.notifications
API,您无法指定通知打开的时间。但是,另一种选择是使用
chrome.experional.notifications
API,这将阻止您将扩展发布到webstore,并且文档很少

您还可以将
chrome.notifications.create
中的
priority
选项更改为-2到2之间的任何整数,其中2是最高值,并将为您的通知提供最长的显示时间


由于您似乎正在使用
通知
对象,因此可能会注意到您的语法与MDN文档中显示的语法不匹配。基本上,似乎没有任何通知的
contextMessage
参数。作为旁注,
onclick
回调将不起作用,因为
Url
参数不再在当前范围内执行。匿名函数将无法看到传递到
Notify
中的
Url
参数。您可能还想签出。

此答案的前半部分不正确。Chrome支持标准的
通知
构造函数
webkit通知
不久前就消失了
chrome.Experiative.notifications
不再存在,它已被移动到名称空间。另请注意。如果您每隔一段时间执行此操作,它将显示您的通知。@RobW,谢谢您的更正。经过进一步研究,我意识到这是正确的。但是,新的
chrome.notifications
API不支持
chrome.experional.notifications
应该允许的许多丰富的通知功能@Xan,这是个很巧妙的把戏。谢谢你让我们知道!