HTML 5的消息通知机制

ooo5556 2014-11-28 05:09:19
HTML 5 已经被应用到Web开发中。跟平常一样,任何一个软件新版本的发布都期待一些新的特性,这对HTML 5也不例外。为了仅仅通过HTML提高用户交互,HTML 5已经提供了很多新的API。

是不是非常有趣呢?并且HTML 5已经和CSS 3结合的非常棒了。

因此,我也开始写一系列与HTML 5的API相关的文章来介绍API的使用和功能,例如Geolocation, Notification, File, 等等,第一篇文章是和Notification API相关。

首先要意识到是,HTML 5的特性和API仅能在支持HTML 5的浏览器中正常使用,如果浏览器不支持HTML 5,就不能使用HTML 5在网页中实现任何一个功能了。现在就来了解一下notification API吧。

什么是HTML 消息通知?

HTML消息通知是指我们可以告诉用户一个确定的事件行为,即使此时用户在浏览器的另一个选项卡。这个通知对于New Mail, New Tweet等事件是非常有用的。

怎么使用?

要使用Notification API,有几个步骤:首先,要从用户那里获取显示通知的许可,只有当用户允许时,才能显示通知给用户。所以先要征求用户的许可而不是直接显示通知。然后,
获取用户许可之后,我们可以显示两种类型的信息:
Normal/Default Notification
HTML Notification
最后执行通知代码。
我已经创建了一个显示通知的JavaScript函数,注意:函数仅限用于这篇文章,因为有很多种方式可以按照每个人的需求去扩展。
HTML:
<h2>Show Normal Notification</h2>
<button class="btn btn-success" id="show_notification">
Normal Notification
</button>

<h2>Show HTML Notification</h2>
<button class="btn btn-success" id="show_html_notification">
HTML Notification
</button>
复制代码
JavaScript
// Function to show Notification
function createNotification(type)
{
if(type == '')
type = 'normal';

if(type != 'html')
{
var title ="You have received HTML 5 Notification";
var msg="Content Goes Here......";
var notification = window.Notifications.createNotification("1.png", title, msg);
}
else
{
var notification = window.Notifications.createHTMLNotification('content.html');
}
notification.show();
}

// Binding the Click event on buttons.

$(document).ready(function ()
{
if (window.webkitNotifications)
{
window.Notifications = window.webkitNotifications;
$('#show_notification').click(function ()
{
if (window.Notifications.checkPermission() == 0)
{
createNotification('normal');
}
else
{
window.Notifications.requestPermission();
}
});

$('#show_html_notification').click(function ()
{
if (window.Notifications.checkPermission() == 0)
{
createNotification('html');
}
else
{
window.Notifications.requestPermission();
}
});
}
else
{
alert('HTML 5 Notifications are not supported on this browser/OS.');
}
});
...全文
564 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
君鹏不姓贾 2014-12-12
  • 打赏
  • 举报
回复
引用 4 楼 sun_7_flower 的回复:
Good good study day day up!
Chinglish真到位
Cheris2014 2014-12-12
  • 打赏
  • 举报
回复
辛苦分享,学习!
sun_7_flower 2014-12-05
  • 打赏
  • 举报
回复
Good good study day day up!
君鹏不姓贾 2014-12-01
  • 打赏
  • 举报
回复
学习学习, 楼主辛苦
从此程序员 2014-12-01
  • 打赏
  • 举报
回复
楼主辛苦,学习了
ooo5556 2014-11-28
  • 打赏
  • 举报
回复
希望对大家有帮助

220

社区成员

发帖
与我相关
我的任务
社区描述
T客论坛是TCL为移动开发者提供的一个交流沟通的平台。开发者可以在T客论坛聚合有共同兴趣的队员,利用TCL开放平台的开放API,开发出优秀有创意的TV版本的应用,实用工具。
社区管理员
  • T客
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧