H5技术栈

HTML5 桌面通知:Notification

2019-11-29  本文已影响0人  Teffy_胖婷婷

Notification介绍

Notification API 是HTML5新增的桌面通知API,用来显示桌面通知消息。

浏览器权限

通过window.Notification来判断浏览器是否兼容Notification API

if (window.Notification) { // 判断浏览器是否兼容Notification }

用户权限

要想向用户显示通知消息,就要通过浏览器获取用户权限,主要通过Notification.permission来判断。
Notification.permission包括的值:

            let permission = Notification.permission;
             // 显示通知的权限
            if (permission == "granted") {

            } else if (permission == "denied") {
                // 不同意,发不了咯
            } else {
                // 其他状态,可以重新发送授权提示
               Notification.requestPermission();
            }

推送通知

获取用户通知后,就可以进行推送消息啦!!

var notification = new Notification(title, options)

参数如下:
title:显示的通知标题
options:通知的设置选项(可选)

还有一些其他的参数,因为没有用到这里就不一一列举啦。

         var notification = new Notification(item.name, {
                dir: 'rtl',
                body: "这个是内容哦!",
                icon: icon,
                requireInteraction:false,
          })

通知消息的效果图如下:


image

通知事件

Notification接口的 onclick属性指定一个事件侦听器来接收click事件。

    notification.onclick = function() {
        //  window.focus 可以定位到有消息的窗口
        window.focus();
        // 关闭通知
        notification.close();
    };

兼容:目前测试了PC端的,发现window 7 的IE浏览器还不支持,其他各浏览器通知消息如果为默认的话也会有不一样的差异。

上一篇 下一篇

猜你喜欢

热点阅读