近期在做公司后台管理系统,当有任务到来时,须要通知当事人,可是 当事人有可能在做别的,浏览器有可能会被最小化,这样就非常难看到通知了。经过查找发现有些浏览器能够使用noitfications。能够在桌面的通知区域内显示一个提示框,而且显示在桌面的最前面,非常方便就能看到了。我就将它简单的封装一下,使其符合经常使用的使用场景。

功能效果类似webQQ的消息提示通知。




chrome 浏览器桌面通知

简单介绍

用于其余B/S下的网络办公提醒功能。

页面最小化的状态下发送通知

依旧显示在屏幕的右下角,立即能够看到内容

依赖

  1. PC chrome浏览器。
  2. 手机android 海豚浏览器

注意事项

通知权限是基于站点(或者域名),同一个站点以下的页面仅仅须要获取一次权限就可以。

假设别禁用了。将不会显示通



设置-》隐私设选以下的 “内容设置”-》通知

知的,也无法再次获取权限了。

能够同浏览器的菜单查看权限。




设置-》隐私设选以下的 “内容设置”-》通知


假设你关闭或者刷新页面了。之前的通知就没法控制了 。

使用

  1. 引用notify.js文件



    <script src="notifiy.js"></script>
  2. 浏览器配置
    检查浏览器是否支持桌面通知功能



    Notifier.HasSupport();


    获取同意桌面通知权限



    Notifier.RequestPermission();
  3. 设置通知显示方式(可选。不设置採用默认模式)



    Notifier.ModelAll(); //默认方式,显示全部的。在linux一般为三个。在window显示在通知区域。 Notifier.ModelUpdate(); //更新模式,显示在上一个通知的位置, Notifier.ModelCount(c); //限制当前页面显示的通知个数,默觉得三个(能够通过參数c改变个数)。超出限制时关闭最早的通知, NOtifier.ModelTimeout(ct); //超时消失模式。显示一定时间自己主动消失。
  4. 发送通知



    Notifier.Notify(icon, title, message); //显示桌面通知,icon:图片的地址 title:通知的标题 message:通知的内容
  5. 关闭的方法



    Notifier.Clse(type); //type=1 关闭上一个 其它值 关闭最早打开的 Notifier.ClosePre(); //关闭近期个打开的通知 Notifier.CloseLast(); //关闭最早显示的通知 NOtifier.CloseAll(); //关闭全部通知
  6. 其它方法



    Notifier.GetPermission(); //获取关于通知使用权限,0,已经得到权限 1,须要获取权限 2,禁止使用Notifier.IsGetPermission(); //是否已经获取通知的使用权限 Notifier.Disable(); //是否禁用通知