1

Chrome拡張機能を作成していて、Webkit通知APIを使用しています。通知にリンクを表示する必要がありますが、問題はWebkit HTML通知が非推奨になっているため、単純なメッセージでのみ通知を使用できることです。つまり、1年前は、Wbkit HTML通知を作成して「a」要素を含めることができましたが、現在はできません。

Webkit通知にリンクを表示する方法はありますか?ありがとう。

4

2 に答える 2

4

はい、表示できます。参照としてこのコードを確認してください。

マニフェスト.json

登録されたバックグラウンドページと通知に必要な権限

{
    "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"
        ]
    }
}

background.js

HTML通知を作成しました

// create a HTML notification:
var notification = webkitNotifications.createHTMLNotification(
    'notification.html' // html url - can be relative
);

// Then show the notification.
notification.show();

Notification.html

CSPを回避するためのスクリプトタグを追加しました

<html>

    <head>
        <script src="notification.js"></script>
    </head>

    <body>
        <a id="click" href="http://www.google.co.in/">Click Me</a>
    </body>

</html>

Notification.js

クリックの通知をポイントしただけで、あらゆる機能を拡張するために使用できます。

document.addEventListener("DOMContentLoaded", function () {
    document.getElementById("click").addEventListener("click", function () {
        console.log("Clicked");
    });
});

参考文献

于 2013-02-07T06:23:31.403 に答える
-1

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";
});
于 2013-05-02T08:28:40.490 に答える