如何禁用Webkit通知?

时间:2012-08-04 15:58:14

标签: html5 webkit html5-notifications

有没有办法让用户可以选择禁用webkitNotifications?如果我第二次拨打requestPermission(),则不会提示用户。

3 个答案:

答案 0 :(得分:0)

我只要求一次权限,然后我让用户配置他是否想要从配置面板接收通知。

您可以使用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();
    }
});

答案 1 :(得分:-1)

答案 2 :(得分:-1)

如果你在Chrome中试试这个:

  1. 打开菜单(它隐藏在地址栏的右侧)
  2. 点击“设置
  3. 点击“显示高级设置...
  4. 在“隐私”下点击“内容设置
  5. 在“通知”下点击“管理例外
  6. 您可以在那里重置通知。