Chrome 桌面通知点击关注内容
Posted
技术标签:
【中文标题】Chrome 桌面通知点击关注内容【英文标题】:Chrome desktop notification click to focus on content 【发布时间】:2012-04-30 21:39:04 【问题描述】:我正在将桌面通知构建到我正在开发的 chrome 扩展中。我需要的功能要求用户在单击通知窗口时被带到导致通知的选项卡。我可以使用 chrome.tabs API 使其正常工作,但我无法弄清楚当点击通知时如何将 Chrome 置于最前面。
我知道 window.focus() 在 chrome 中被禁用,但这绝对是可能的,因为这是 Gmail 桌面通知的行为。
【问题讨论】:
【参考方案1】:notification = webkitNotifications.createNotification(...)
notification.onclick = function()
window.focus();
this.cancel();
;
notification.show()
...按预期工作,无需任何额外权限。
【讨论】:
这是错误的,这是html5 api,他是在询问chrome扩展API。 这对我也不起作用。点击通知只是关闭通知,并没有将焦点设置在窗口上。 我在这里发布了一个更新的答案:***.com/a/40964355/714733【参考方案2】:使用chrome.tabs.update(tabId, active: true);
聚焦选项卡(不要与chrome.windows.update
混淆)。
tabId
通常通过Tab
type 获得。这个对象被传递给许多方法/事件监听器(有时通过MessageSender
type)。
【讨论】:
我想确保两个选项卡都设置为活动状态并且窗口获得焦点。您是否碰巧知道同时执行这两项操作是否有害,或者我应该先将选项卡设置为活动状态,然后将窗口设置为集中在回调中?【参考方案3】:function msg()
var notification = new Notification("Title", body: "Yore message", icon: "img.jpg" );
notification.onshow = function() setTimeout(notification.close(), 15000); ;
notification.onclick = function()
window.focus();
this.cancel();
;
msg();
【讨论】:
以上是关于Chrome 桌面通知点击关注内容的主要内容,如果未能解决你的问题,请参考以下文章
chrome 在后台运行时动态站点更新的 Chrome 桌面通知