H5桌面消息通知Notification

摘要:
H5桌面消息通知代码非常简单。您可以直接复制它以查看效果(˂=status){return;}否则{vartag=“sds”+Math.random();notify=newNotification;notify.onclick=function(){//如果单击通知消息,通知窗口将被激活window.focus();},通知oneerror=function(){console.log(“HTML5桌面消息错误!!!”);};通知onshow=函数(){/*setTimeout*/};通知onclose=function(){console.log(“HTML5桌面消息已关闭!!!
H5桌面消息通知Notification

代码很简单,直接复制即可看到效果

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>html5桌面通知</title>
    </head>
    <body>
        <input type="button" value="开启桌面通知" onclick="showDeskTopNotice('通知','HTML5桌面消息');">
        <script>
            function showDeskTopNotice(title,msg){
                var Notification = window.Notification || window.mozNotification || window.webkitNotification;
                if(Notification){
                    Notification.requestPermission(function(status){
                        //status默认值'default'等同于拒绝 'denied' 意味着用户不想要通知 'granted' 意味着用户同意启用通知
                        if("granted" != status){
                            return;
                        }else{
                            var tag = "sds"+Math.random();
                            var notify = new Notification(
                                title,
                                {
                                    dir:'auto',
                                    lang:'zh-CN',
                                    tag:tag,//实例化的notification的id
                                    icon:'https://admin.hms.xin/group1/M00/00/01/rB_YCFsY0OeAX6Q8AAAQvnJ6aNc109.ico',//通知的缩略图,//icon 支持ico、png、jpg、jpeg格式
                                    body:msg //通知的具体内容
                                }
                            );
                            notify.onclick=function(){
                                //如果通知消息被点击,通知窗口将被激活
                                window.focus();
                            },
                            notify.onerror = function () {
                                console.log("HTML5桌面消息出错!!!");
                            };
                            notify.onshow = function () {
                                /*setTimeout(function(){
                                    notify.close();
                                },2000)*/
                            };
                            notify.onclose = function () {
                                console.log("HTML5桌面消息关闭!!!");
                            };
                        }
                    });
                }else{
                    console.log("您的浏览器不支持桌面消息");
                }
            };
        </script>
    </body>
</html>

免责声明:文章转载自《H5桌面消息通知Notification》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Creating Your First Mac AppAdding a Track Object 添加一个 Track 对象SVN解锁失败的解决办法下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

【转载】通过服务端监控结果,说说WCF的并发处理

InstanceContextMode表示的是,WCF允许产生可用来处理包含在传入消息中的调用的服务(契约类)的实例InstanceContext模式数,WCF的并发模式ConcurrencyMode是针对某个封装了服务实例的InstanceContext而言的 简单的说,InstanceContextMode表示产生多少个服务实例对象,Concurren...

C# 虚拟键盘核心方法 Tech

C# SendKeys.Send(转) 将一个或多个按键消息发送到活动窗口,就如同在键盘上进行输入一样。 语法 SendKeys string[, wait] SendKeys 语句的语法具有以下几个命名参数: 部分 描述 string 必需的。字符串表达式,指定要发送的按键消息。 Wait 可选的。指定等待方式的 BooleandefBooleanDa...

Kafka网络模型

摘要:很多人喜欢把RocketMQ与Kafka做对比,其实这两款消息队列的网络通信层还是比较相似的,本文就为大家简要地介绍下Kafka的NIO网络通信模型,通过对Kafka源码的分析来简述其Reactor的多线程网络通信模型和总体框架结构,同时简要介绍Kafka网络通信层的设计与具体实现。 一、Kafka网络通信模型的整体框架概述 Kafka的网络通信模型...

4wpa_supplicant适配层 详解

适配层是 通用的wpa_supplicant的 封装,在Android中 作为 WiFi部分的 硬件抽象层来使用。wpa_supplicant适配层 主要用于 与wpa_supplicant守护进程 的 通信,以提供给Android框架使用,它实现了 加载、控制 和 消息监控等功能。           1、当java层调用 loadDriver时, 它...

MQTT的使用介绍

之前项目中使用到了mqtt,刚开始用着用着都不知道是干啥的,后来百度了一下: MQTT MQTT基于订阅者模型架构,客户端如果互相通信,必须在同一订阅主题下,即都订阅了同一个topic,客户端之间是没办法直接通讯的。订阅模型显而易见的好处是群发消息的话只需要发布到topic,所有订阅了这个topic的客户端就可以接收到消息了。 发送消息必须发送到某个to...

分布式任务调度平台xxl-job

定时任务调度:在某个时间点触发执行操作(CURD)。 分布式任务调度平台的使用场景:数据同步、交易信息(对账)、清除过期用户信息、定期发送报表、消息推送。 传统的定时任务与分布式定时任务的区别? 传统的定时任务特征:单点系统(job没有集群) 思考:如果job在高并发的情况下,导致job服务器宕机之后,这时候应该如何处理? 1.定时任务和业务服务放在用一个...