5

ユーザーに webkitNotifications を無効にするオプションを与える方法はありますか? もう一度呼び出すとrequestPermission()、ユーザーにプロンプ​​トが表示されません。

4

3 に答える 3

0

パーミッションを 1 回要求するだけで、構成パネルから通知を受け取るかどうかをユーザーに構成させることができます。

このオプションは、サーバーまたはクライアント側のデータベースに保存できますlocalStorage

通知を表示する

if (notificationsEnabled) {
    var notification = new window.Notification("Hello");
}

ロード時に設定を復元

$(function () {
    notificationsEnabled = JSON.parse(localStorage.getItem('notificationsEnabled') || false);
    $('#notificationsEnabled').prop('checked', notificationsEnabled);

    if (!window.Notification) {
        $('#notificationsEnabled').prop('disabled', true);
    }
});

設定

<label>
    <input id="notificationsEnabled" name="notificationsEnabled" type="checkbox">
    Enable notifications
</label>

チェックボックスの onchange イベントを処理する

$('#notificationsEnabled').on('change', function() {
    notificationsEnabled = !notificationsEnabled;
    localStorage.setItem('notificationsEnabled', notificationsEnabled);
    if (notificationsEnabled && window.Notification.permission === 'default') {
        window.Notification.requestPermission();
    }
});
于 2015-06-08T14:47:10.880 に答える
-1

コードで通知のユーザー設定を事前設定してみることができます。

http://developer.apple.com/library/safari/#documentation/AppleApplications/Conceptual/SafariJSProgTopics/Articles/SendingNotifications.html

于 2013-02-14T17:46:18.393 に答える
-1

Chrome を使用している場合は、次を試してください。

  1. メニューを表示します (アドレスバーの右側に隠れています)
  2. 「設定」をクリック
  3. [詳細設定を表示... ]をクリックします。
  4. [プライバシー]の下の[コンテンツ設定]をクリックします。
  5. [通知]の下の[例外の管理] をクリックします。

そこで通知をリセットできます。

于 2013-05-02T08:41:49.513 に答える