我正在创建一个 Chrome 扩展程序,并且正在使用 Webkit 通知 API。我需要在通知中显示一个链接,但问题是现在 Webkit HTML 通知已被弃用,所以我只能使用带有简单消息的通知。我的意思是,一年前我可以创建一个 Wbkit HTML 通知并包含“a”元素,但现在我不能。
有没有办法在 Webkit 通知中显示链接?谢谢。
我正在创建一个 Chrome 扩展程序,并且正在使用 Webkit 通知 API。我需要在通知中显示一个链接,但问题是现在 Webkit HTML 通知已被弃用,所以我只能使用带有简单消息的通知。我的意思是,一年前我可以创建一个 Wbkit HTML 通知并包含“a”元素,但现在我不能。
有没有办法在 Webkit 通知中显示链接?谢谢。
是的,您可以显示,检查此代码作为参考。
注册的后台页面和通知所需的权限
{
"name": "Notification with Link",
"description": "http://stackoverflow.com/questions/14731996/how-to-include-a-link-in-a-webkit-notification",
"manifest_version": 2,
"version": "1",
"permissions": [
"notifications"
],
"background": {
"scripts": [
"background.js"
]
}
}
创建了一个 HTML 通知
// create a HTML notification:
var notification = webkitNotifications.createHTMLNotification(
'notification.html' // html url - can be relative
);
// Then show the notification.
notification.show();
添加脚本标签以避免 CSP
<html>
<head>
<script src="notification.js"></script>
</head>
<body>
<a id="click" href="http://www.google.co.in/">Click Me</a>
</body>
</html>
只需指向点击通知,可用于扩展任何功能。
document.addEventListener("DOMContentLoaded", function () {
document.getElementById("click").addEventListener("click", function () {
console.log("Clicked");
});
});
要使 webkit 通知成为链接,请执行以下操作(我使用 jQuery 处理事件只是因为它更容易):
var notification = window.webkitNotifications.createNotification(
"http://www.google.com/images/logo.png", // icon url - can be relative
"Google", // notification title
"is the best search engine. Click to find out more" // notification body text
);
// Show the notification, I'm assuming notifications are supported and allowed
notification.show();
jQuery(notification).click(function(){
window.location = "http://www.google.com";
});