javascript – 删除HTML5通知权限

前端之家收集整理的这篇文章主要介绍了javascript – 删除HTML5通知权限前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
您可以通过运行以下命令提示用户允许或拒绝来自浏览器的桌面通知
Notification.requestPermission(callback);

但是可以通过代码删除该权限吗?我们希望用户可以选择切换通知.这可以通过JavaScript实现,还是我们需要在其他地方保存该选项?

解决方法

不,您的脚本无法以编程方式放弃显示通知的权限.除了requestPermission之外,API specification没有任何与权限相关的功能. (当然,浏览器可能有一个选项菜单,允许用户撤消域的权限,但这是一个浏览器级选项,而不是网站级选项.例如,在Chrome中,您可以看到此选项菜单单击地址栏左侧的图标.)

如果您不想显示通知,只需不要调用通知.

您可以在条件内将所有调用包装到新的通知中:

if(notifications_allowed) {
    new Notification(...);
}

或者,您可以重写Notification构造函数以包含contiditional并根据需要调用原始Notification:

(function() {
    var oldNofitication = Notification;
    Notification = function() {
        if(notifications_allowed) {
            oldNotification.apply(this,arguments);
        }
    }
})();

如果您使用供应商前缀的构造函数函数(例如,webkitNotifications.createNotification),那么您还需要重写每个构造函数函数,以条件取决于您的options变量.

原文链接:https://www.f2er.com/js/158735.html

猜你在找的JavaScript相关文章