Web桌面消息推送

Posted by Chris Lu on 2016-10-08

微博、网易邮箱、网页微信都有桌面推送的功能,通过Web Notifications就可以轻松实现。

兼容性:

除了IE外,各大现代浏览器都对这个桌面推送有了基本的支持。
在移动端浏览器方面,可能因为平台的权限限制的原因目前只有firefox积极地支持这个属性。

说明:

  1. Notification.requestPermission() 向用户申请权限函数,可以使用promise语法,也可以使用传统回调方式。

  2. Notification.permission属性有三个值:defaultgranteddenied。当且仅当值为default时可以调用申请权限函数向用户申请权限。

  3. 权限申请成功后,桌面消息推送实例创建:

    1
    2
    3
    4
    5
    new Notification('title', {
    body: '这是我的第一条桌面推送', // 消息体的内容
    icon: 'some/icon/url', // 消息体的图标
    sound :'...' // 消息体提示的声音
    });

  4. 实例的相关事件:Notification.onclickNotification.onerrorNotification.oncloseNotification.onshow

手动设置权限

chrome用户请在 “设置->隐私设置->内容设置->通知”选择网站域名点击允许
其他浏览器类似,请自己google