兼容 谷歌、火狐、360系列浏览器的桌面通知

兼容 谷歌、火狐、360系列浏览器的桌面通知,第1张

概述容 谷歌、火狐、360系列浏览器的桌面通知1、通知授权问题 开启桌面通知需要检测当前浏览器是否支持并且有授权,示例代码如下:if(!("Notification"inwindow)&&!window webkitNotifications){ 容 谷歌、火狐、360系列浏览器的桌面通知
1、通知授权问题

       开启桌面通知需要检测当前浏览器是否支持并且有授权,示例代码如下:
 

 if (!("Notification" in window) && !window.webkitNotifications) {    //不支持      alert("很遗憾,您当前浏览器不支持该功能!\n建议在360、谷歌、火狐等浏览器上使用此功能");       } else if (Notification.permission != undefined && Notification.permission != null) {    if (Notification.permission != "granted") {        /*未授权(谷歌、火狐)  此处省略 300行*/    }       } else if (Notification.permission == null || Notification.permission == undefined) {    if (window.webkitNotifications.checkPermission() != 0) {        /*未授权(360系列) 此处省略 300行*/    }       }else {    /*支持并已授权(此处省略 300行) */       }   

效果图如下:

2、桌面通知调用方法

    桌面通知调用方法(windowsnotify)如下:
 

/*   * 桌面通知   * strNewsContent:通知的内容   */  function windowsnotify(strNewsContent) {      if (!("Notification" in window) && !window.webkitNotifications && window.webkitNotifications.checkPermission() != 0)          return       if (Notification.permission == null || Notification.permission == undefined)          windowsnotify360(strNewsContent);      else if (Notification.permission === "granted"         windowsnotifyFFAndGE(strNewsContent);      else if (Notification.permission !== 'denIEd') {          Notification.requestPermission(function (permission) {              if (!('permission' in Notification))                  Notification.permission = permission;                if (permission === "granted"                 windowsnotifyFFAndGE(strNewsContent);          });      }      //桌面通知(兼容360)  function windowsnotify360(strNewsContent) {      if (window.webkitNotifications && window.webkitNotifications.checkPermission() == 0) {          var notify = window.webkitNotifications.createNotification(              "http://www.fx678.com/corp/images/aboutus/htw.jpg"                 '汇通-新闻中心'             strNewsContent          );            //设置定时撤销机制,防止通知长时间显示不被关闭          notify.ondisplay = function (event) {              setTimeout(function () {                  event.currentTarget.cancel();              }, 10000);          };          //下面是定义点击事件,类似地还可定义其它事件          notify.onclick = function () {              window.focus();              this.cancel();          };          //d出          notify.show();      } else if (window.webkitNotifications) {          window.webkitNotifications.requestPermission(windowsnotify360);      }      //桌面通知(兼容火狐、谷歌)  function windowsnotifyFFAndGE(strNewsContent) {      var notification = new Notification('汇通-新闻中心'                          {                              body: strNewsContent,                              icon: "http://www.fx678.com/corp/images/aboutus/htw.jpg"                           });        //设置定时撤销机制,防止通知长时间显示不被关闭      notification.ondisplay = function (event) {          setTimeout(function () {              event.currentTarget.cancel();          }, 10000);      };        //下面是定义点击事件,类似地还可定义其它事件      notification.onclick = function () {          window.focus();          this.cancel();      }; 

效果图如下:

总结

以上是内存溢出为你收集整理的兼容 谷歌、火狐、360系列浏览器的桌面通知全部内容,希望文章能够帮你解决兼容 谷歌、火狐、360系列浏览器的桌面通知所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1020331.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-23
下一篇 2022-05-23

发表评论

登录后才能评论

评论列表(0条)

保存