设为首页
优惠IDC
收藏本站
六狼博客
六狼论坛
开启辅助访问
切换到窄版
用户名
Email
自动登录
找回密码
密码
登录
立即注册
只需一步,快速开始
只需一步,快速开始
快捷导航
门户
首页
BBS
云计算
大数据
手机
移动开发android,ios,windows phone,windows mobile
编程
编程技术java,php,python,delphi,ruby,c,c++
前端
WEB前端htmlcss,javascript,jquery,html5
数据库
数据库开发Access,mysql,oracle,sql server,MongoDB
系统
操作系统windows,linux,unix,os,RedHat,tomcat
架构
项目管理
软件设计,架构设计,面向对象,设计模式,项目管理
企业
服务
运维实战
神马
搜索
搜索
热搜:
php
java
python
ruby
hadoop
sphinx
solr
ios
android
windows
centos
本版
帖子
用户
六狼论坛
»
首页
›
WEB前端
›
HTML5
›
HTML5学习笔记(一):桌面提醒
返回列表
查看:
93
|
回复:
0
HTML5学习笔记(一):桌面提醒
[复制链接]
Danny.hupeng
Danny.hupeng
当前离线
积分
32
窥视卡
雷达卡
升级
64%
当前用户组为
童生
当前积分为
32
, 升到下一级还需要 18 点。
8
主题
8
主题
8
主题
童生
童生, 积分 32, 距离下一级还需 18 积分
童生, 积分 32, 距离下一级还需 18 积分
积分
32
发消息
楼主
|
发表于 2013-1-4 03:02:44
|
显示全部楼层
|
阅读模式
<div id="cnblogs_post_body">HTML5中的桌面提醒(web notifications)能够让用户得到实时的消息提醒,在网页多窗口聊天的时候,这一功能将极大的方便用户。例如新浪微博私信聊天时候的消息提醒功能。这里只考虑浏览器原生的功能,对于那些通过插件来实现的桌面提醒功能不做考虑(如360安全浏览器)。但是这一功能目前只有google chrome(21.0+)和Safari(6.0+)部分实现了,在手机端,也就Blackberry browser实现了(完全实现),实现这一功能的浏览器均以webkit为内核。应用的范围还很有限,在HTML5如火如荼的今天,我们依然可以做个很好的展望。
API介绍
桌面提醒功能是由window对象下的webkitNotifications来实现的,通过window.webkitNotifications将返回一个NotificationCenter对象。这个对象没有属性,但是却关联着四个方法:
1.requestPermission()
这个方法用于向用户请求获得消息提醒的权限,调用这个方法将产生如下效果(下图),分别对应着3中状态:&ldquo;granted&rdquo;(状态值:0)表示用户同意消息提醒;&ldquo;default&rdquo;(状态值:1)表示默认状态,用户既未拒绝,也未同意;&ldquo;denied&rdquo;(状态值:1)表示用户拒绝消息提醒。只有在状态值为0的时候才能够允许消息提醒,这个值保存在一个内部变量中,并且是只读的,通过checkPermission()方法可以提取到这个状态值。
2.checkPermission()
这个方法用于获取请求权限的状态值,并返回这个值。
3.createNotification()
这个方法以纯消息的方式创建提醒消息,它接受三个参数:iconURL, title, body。这三个参数均为字符串格式,iconURL表示一个图标地址、title表示消息标题、body表示消息主体,默认这三个参数为空字符串。
调用这个方法会返回一个Notification对象,我们可以针对这个对象做更多的设置。
属性:
dir:设置消息的排列方向,可取值为&ldquo;auto&rdquo;(自动), &ldquo;ltr&rdquo;(left to right), &ldquo;rtl&rdquo;(right to left),下图展示的是不同取值的显示效果。
tag:为消息添加标签。如果设置此属性,当有新消息提醒时,标签相同的消息,后一个消息框会替换先前一个,不会出现多重消息提示框。
onshow:事件属性,当消息框显示的时候触发该事件;
onclick:事件属性,当点击消息框的时候触发该事件;
onclose:事件属性,当消息关闭的时候触发该事件;
onerror:事件属性,当出现错误的时候触发该事件;(TODO:错误类型)
方法:
addEventListener && removeEventListener:常规的添加和移除事件方法;
show:显示消息提醒框;
close:关闭消息提醒框;
cancel:关闭消息提醒框(这个方法和close方法产生的效果是一样,不清楚他们之间有什么深层次的区别);
dispatchEvent:关于这个方法可以参考
这里
;
4.createHTMLNotification()
这个方法以HTML方式创建消息提醒,它接受一个参数,即HTML消息文档的URL。同样调用这个方法也会返回一个Notification对象,这个对象与用纯文本方式创建消息提醒返回的Notification对象相同,故对其属性和方法就不重述了。
实例
下面要创建一个桌面提醒的实例,真是的感受下这个一新功能。
1、由于支持桌面的浏览器还很有限,在使用这一功能前不可避免的要进行检测是否支持。
<div class="cnblogs_code">
1
function
supported(){
2
if
(window.webkitNotifications){
3
return
true
;
4
}
else
{
5
return
false
;
6
}
7
}
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
显身卡
返回列表
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
Copyright © 2008-2020
六狼论坛
(https://it.6wolf.com) 版权所有 All Rights Reserved.
Powered by
Discuz!
X3.4
京ICP备14020293号-2
本网站内容均收集于互联网,如有问题请联系
QQ:389897944
予以删除
快速回复
返回顶部
返回列表