首页 > 代码库 > 浏览器桌面通知(notifications)

浏览器桌面通知(notifications)

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

项目地址:https://github.com/rentiansheng/notification

chrome 浏览器桌面通知

简介

用于其余B/S下的网络办公提醒功能。
页面最小化的状态下发送通知
依然显示在屏幕的右下角,马上可以看到内容

依赖

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

注意事项

通知权限是基于网站(或者域名),同一个网站下面的页面只需要获取一次权限即可。
如果别禁用了。将不会显示通

设置-》隐私设选下面的 “内容设置”-》通知
知的,也无法再次获取权限了。
可以同浏览器的菜单查看权限。

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

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

使用

  1. 引用notify.js文件



    <script src=http://www.mamicode.com/"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();         //是否禁用通知

浏览器桌面通知(notifications)