javascript - 如何监听网络通知权限变化

标签 javascript web permissions notifications listener

根据Notification.permission从 MDN 的规范中,我们可以检查当前用户对 web 通知的权限。

但是,有没有办法监听这个权限变化呢?是这样的吗?

.on(Notification.permission, 'changed', function(){ }

最佳答案

我认为现在回答有点晚了,但是......你可以使用它。

var Notification = window.Notification || window.mozNotification || window.webkitNotification;

var was_questioned = false;
if (Notification.permission == 'default') {
    was_questioned = true;
}

Notification.requestPermission(function (permission) {
    if (was_questioned) {
        console.log("User was asked. New permission is: " + permission);
    }
    if ('permissions' in navigator) {
    navigator.permissions.query({name:'notifications'}).then(function(notificationPerm) {
        notificationPerm.onchange = function() {
            console.log("User decided to change his seettings. New permission: " + notificationPerm.state);
        };
    });
    }
});

关于javascript - 如何监听网络通知权限变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35217959/

相关文章:

javascript - HTML2Canvas 不呈现 D3 字体和字体大小

web - 将 Google Tag Manager 过滤到仅我的主域(不包括测试环境)?

不使用 Django 堆栈的 Python Web 开发?

php - 只获取网站的相关部分

java - 使用 GPS 时出现权限错误

python - 为授权编写 CherryPy 装饰器

javascript - 如何循环存储并计算 sencha 上的字段数据

Javascript:显示所有用户信息(即导航器对象)以进行调试

c# - 创建 CNG key 的权限

javascript - jquery 和 json 数组