Notification html5 的通知api
https://developer.mozilla.org/zh-CN/docs/Web/API/notification
使用方法
var notification = new Notification(title, options)
参数:
title: 标题
option: 可选
dir: 文字的方向;它的值可以是auto(自动),ltr(从左到右), orrtl(从右到左)lang: 指定通知中所使用的语言。这个字符串必须在 BCP 47 language tag 文档中是有效的。body: 通知中额外显示的字符串tag: 赋予通知一个ID,以便在必要的时候对通知进行刷新、替换或移除。icon: 一个图片的URL,将被用于显示通知的图标。
属性:
静态属性 - 这些属性仅在 Notification 对象上有效。
Notification.permission: 一个用于表明当前通知显示授权状态的字符串。可能的值包括:denied(用户拒绝了通知的显示),granted(用户允许了通知的显示), 或default(因为不知道用户的选择,所以浏览器的行为与 denied 时相同)
实例属性 - 这些属性仅在 Notification 的实例中有效。
- Notification.title 在构造方法中指定的 title 参数 (只读)
- Notification.dir 知的文本显示方向。在构造方法的 options 中指定(只读)。
- Notification.lang 通知的语言。在构造方法的 options 中指定(只读)。
- Notification.body 通知的文本内容。在构造方法的 options 中指定(只读)。
- Notification.tag 通知的 ID。在构造方法的 options 中指定(只读)。
- Notification.icon 通知的图标图片的 URL 地址。在构造方法的 options 中指定(只读)。
事件处理:这些事件 在 Notification 的实例中有效
Notification.onclick处理click事件的处理。每当用户点击通知时被触发。Notification.onshow处理show事件的处理。当通知显示的时候被触发。Notification.onerror处理error事件的处理。每当通知遇到错误时被触发。Notification.onclose处理close事件的处理。当用户关闭通知时被触发。
方法:
静态方法 - 这些方法仅在 Notification 对象中有效
Notification.requestPermission()用于当前页面想用户申请显示通知的权限。这个方法只能被用户行为调用(比如:onclick 事件),并且不能被其他的方式调用。
实例方法 - 这些方法仅在 Notification 实例或其 prototype 中有效
Notification.close()用于关闭通知。
实例:
html
<button onclick="notifyMe()">Notify me!</button>
<button id="btn">关闭通知</button>
js
function notifyMe() {
// 先检查浏览器是否支持
if (!("Notification" in window)) {
alert("This browser does not support desktop notification");
}
// 检查用户是否同意接受通知
else if (Notification.permission === "granted") {
tz();
}
// 否则我们需要向用户获取权限
else if (Notification.permission !== 'denied') {
Notification.requestPermission(function (permission) {
// 如果用户同意,就可以向他们发送通知
if (permission === "granted") {
tz();
}
});
}
function tz() {
var notification = new Notification("Hi there!");
notification.onshow = function(){
console.log('通知显示');
}
notification.onclick = function(){
console.log('点击通知');
}
var $btn = document.querySelector('#btn');
$btn.onclick = function(){
console.log('关闭通知');
notification.close();
}
$btn = null;
}
// 最后,如果执行到这里,说明用户已经拒绝对相关通知进行授权
// 出于尊重,我们不应该再打扰他们了
}

Notification html5 的通知api的更多相关文章
- HTML5 桌面通知:Notification API
原文地址:http://blog.gdfengshuo.com/article/23/ 前言 Notification API 是 HTML5 新增的桌面通知 API,用于向用户显示通知信息.该通知是 ...
- 介绍一个比较酷东西:HTML5 桌面通知(Notification API)
Notification API 是 HTML5 新增的桌面通知 API,用于向用户显示通知信息.该通知是脱离浏览器的,即使用户没有停留在当前标签页,甚至最小化了浏览器,该通知信息也一样会置顶显示出来 ...
- HTML5桌面通知:notification
最近由于公司业务需要,领导要求IM消息有像网页微信那样有新消息桌面右下角弹出一个提示框的效果!由于自己才疏学浅,一时还没明白微信是怎么实现的!所以只能问百度(因为懒得FQ)咯! 在网上搜索了N久,心都 ...
- H5 notification浏览器桌面通知
Notification是HTML5新增的API,用于向用户配置和显示桌面通知.上次在别的网站上看到别人的通知弹窗,好奇之余也想知道如何实现的.实际去查一下发现并不复杂,且可以说比较简单,故写篇博客分 ...
- HTML5桌面通知(Web Notifications)实例解析
先上一段代码,ie不支持,Chrome.fireFox.Opera支持 <!DOCTYPE html> <html> <head> <meta http-eq ...
- 在 Xamarin.Android 中使用 Notification.Builder 构建通知
0 背景 在 Android 4.0 以后,系统支持一种更先进的 Notification.Builder 类来发送通知.但 Xamarin 文档含糊其辞,多方搜索无果,遂决定自己摸索. 之前的代码: ...
- 【小月博客】用HTML5的File API做上传图片预览功能
前段时间做了一个项目,涉及到上传本地图片以及预览的功能,正好之前了解过 html5(点击查看更多关于web前端的有关资源) 可以上传本地图片,然后再网上看了一些demo结合自己的需求,终于搞定了.(P ...
- HTML5 <Audio/>标签Api整理(二)
1.实例2: 相对较完整 Html代码: <style> #volumeSlider .slider-selection { background:#bababa; } </styl ...
- HTML5: Screen Orientation API
媒体的询问取决于智能手机和平板布局调整的方向一致网站.但有时候你被锁定在一个希腊网站特定方向.横向或纵向.此时,是本机格式可以指定保健应用. APP只显示在一个预设格式-独立于实际设备方向.通过使用H ...
随机推荐
- MyBatis 的缓存机制
缓存机制可以减轻数据库的压力,原理是在第一查询时,将查询结果缓存起来,之后再查询同样的sql, 不是真的去查询数据库,而是直接返回缓存中的结果. 缓存可以降低数据库的压力,但同时可能无法得到最新的结果 ...
- Hive的UDF是什么?
首先我们学习hadoop的时候,为了让我们不太会java语言但是对SQL很熟悉的工程师能够操作基本的mapreduce计算过程,Hive被设计出来了.Hive就好比是hadoop在执行MR(mapre ...
- JVM异常之:直接内存溢出
示例: package com.dxz.jvm; import java.lang.reflect.Field; import sun.misc.Unsafe; /** * @Described:直接 ...
- Zabbix agentd 命令
#zabbix_agentd -p 查看zabbix所有的内置监控项 [root@nod01 zabbix_agentd.d]# zabbix_agentd -pagent.hostname [s|Z ...
- Volley封装
Volley.jar下载 在Application初始化 Volley queues=Volley.newRequestQueue(appContext); 并返回RequestQueue 对象 pu ...
- STP RSTP
一.透明网桥 1.对于一般的透明网桥来说,通常都具有以下的特点: +拓展LAN的能力 +自主动态学习站点的地址信息 当网桥的某个端口上收到含有某个源MAC地址的数据帧时,它就把该MAC地址和接收该数据 ...
- [UE4]Math Expression计算数学公式,可以接受参数
- 转]GSM模块信号强度CSQ与RSSI的对应关系
使用GSM或者3G模块时,都会接触到信号强度CSQ.通过指令AT+CSQ,模块返回当前的信号质量,例如: AT+CSQ +CSQ: 28,0 其中28就是信号强度CSQ,但它不是真实的CSQ,他应该叫 ...
- sas share 备忘录
options comamid=tcp;libname payable 'E:\shouen';proc server authenticate=optional id=share1 msgnumbe ...
- linux5.6以下版本的不兼容问题
之前一直用的都是mysql5.6版本,最近突然使用到了mysql5.1版本,于是在导入数据的时候便出现了很多由于版本不兼容的问题. 1.mysql5.1没有datetime类型,所以对于时间类型,只能 ...