`

HTML 5中的webnotification API初探

阅读更多
  在HTML 5中,WC3连web notification的机制也制定了初步的草稿标准,
所谓的web notification,就是说比如可以在定时向客户端推送点消息,
比如OA中,可以在用户的浏览器中的右下角弹出一个信息提示窗口,
W3C的标准在:http://www.w3.org/TR/notifications/
  目前支持的是chrome比较好,下面看例子:
1 获得api访问权限
    首先,如果是chrome的话,必须进行设置,就是在chrome的选项中,把

高级选项中-->内容设置--点通知一栏的设置,然后设置为"允许所有网站发送桌面
通知"
   然后代码中,这样获得:
 
$('#btnGrantPermission').click(function () {
    if (window.Notifications.checkPermission() == 0) {
        createNotification();
    } else {
        window.Notifications.requestPermission();
    }
});


    就是说,尝试去获得API的权限,如果window.Notifications.checkPermission() == 0,则说明浏览器已经有其权限,可以继续做createNotification();
的方法;
    否则用window.Notifications.requestPermission();去获得实际的权限

2 然后看createNotification();这里是实际设置一个弹出窗口的内容,代码为:
   
 function createNotification() {
            var notification = window.Notifications.createNotification("test.png", "这里是标题", "这里是内容");
            notification.onshow = function () {
                setTimeout(notification.cancel(), 1500);
            }
            notification.show();
        }



    这里用createNotification方法创建一个弹出窗口提示,使用很简单,
这里并设置了这个窗口多久就会消失(1.5S).

3 最后,搞一个按钮,然后当用户点按钮时,就会获得一个右下角弹出窗口的提示,虽然
很丑陋,完整代码如下:
 

<!DOCTYPE html>
<html>
<head>
    <title>Notifications</title>    
    <script type="text/javascript" src="jquery-1.6.2.min.js"></script>
</head>
<body>
    <div>
        <input id="btnGrantPermission" type="button" value="Grant Notification Permission" />
    </div>
    <script type="text/javascript">
        $(document).ready(function () {        
            if (window.webkitNotifications) {
                window.Notifications = window.webkitNotifications;
                $('#btnGrantPermission').click(function () {
                    if (window.Notifications.checkPermission() == 0) {
                        createNotification();
                    } else {
                        window.Notifications.requestPermission();
                    }
                });
            }            
        });        
 
        function createNotification() {
            var notification = window.Notifications.createNotification("test.png", "这里是标题", "这里是内容");
            notification.onshow = function () {
                setTimeout(notification.cancel(), 1500);
            }
            notification.show();
        }


    </script>
</body>
</html>
3
1
分享到:
评论

相关推荐

    Html5小游戏----初探

    在本篇“Html5小游戏----初探”中,我们将深入探讨HTML5游戏开发的基础知识。 首先,HTML5的核心在于其强大的新元素和API,使得开发者无需依赖Flash或其他插件即可创建动态内容。其中,Canvas是用于绘制2D图形的...

    HTML5实现页面切换激活的PageVisibility API使用初探

    HTMl5 推出了一个很“特别”的 API Page Visibility ,之所以说它特别,是因为这个 API 关注的是一个很少人留意的功能 —— 浏览器标签( tab ) 是否被激活。这里必须解释一下,这个“激活”,指的是这个标签是否正被...

    天干地支在择时中的应用初探20211017.pdf

    天干地支在择时中的应用初探 天干地支是中国古代的计时系统,用于记录和预测时间周期。天干地支系统由十个天干(甲乙丙丁戊己庚辛壬癸)和十二个地支(子丑寅卯辰巳午未申酉戌亥)组成。天干地支的阴阳属性奇数为阳...

    web标准初探(主要介绍web标准)

    ### Web标准初探 #### 1. 什么是Web标准? Web标准是一系列旨在规范Web开发实践的技术规范和指导原则的集合。它强调内容与表现形式的分离,旨在提高Web内容的可访问性、可维护性和跨平台兼容性。Web标准包括三个...

    Web3.0初探:一个基于区块链技术、用户主导、去中心化的网络生态

    Web3.0初探:一个基于区块链技术、用户主导、去中心化的网络生态.pdf

    Vertx-Web初探

    ### Vertx-Web初探 #### 一、项目概述与准备 ##### 1.1 基本项目结构 为了确保项目的顺利进行,首先需要创建一个Maven项目,并且按照以下结构组织: - 源代码包:`src/main/vertx` - 资源路径:`src/main/...

    Html5ppt 资料

    Html5开发PPT资料,参考别人,自己整理的

    20210627-开源证券-中小盘周报:初探零食龙头成功之道~三大模式全对比.pdf

    在本案例中,这份名为《***-开源证券-中小盘周报:初探零食龙头成功之道~三大模式全对比.pdf》的报告,主要关注的是中小盘市场,并对零食行业龙头企业的成功之道进行了深入探讨。 报告内容可以分为几个主要部分:...

    利用Google Map API开发轻量级GIS桌面应用程序之初探.pdf

    "利用Google Map API开发轻量级GIS桌面应用程序之初探" 本文旨在探讨如何利用Google Map API开发轻量级GIS桌面应用程序。Google Map API是Google公司为开发者提供的Maps编程API,它允许开发者在不必建立自己的地图...

    基于Ajax的WEB编程初探.pdf

    "基于Ajax的WEB编程初探" 本文介绍了 Ajax 技术在 WEB 编程中的应用,讨论了 Ajax 的技术组成、原理和实现方式。Ajax 是一种异步 JavaScript 和 XML 技术,通过在客户端和服务端进行异步数据传输,实现了良好的用户...

    大型Web2.0站点构建技术初探

    大型Web2.0站点构建技术初探,大家来看看吧

    初探uCOS-II

    5. **丰富的API**:uCOS-II提供了一系列的API函数,用于任务管理、信号量、消息队列、事件标志组等,大大简化了多任务编程的复杂度。 #### 三、uCOS-II的启动过程与初始化 uCOS-II的启动过程通常包含以下步骤: 1...

    基于Web日志的数据挖掘初探.pdf

    基于Web日志的数据挖掘初探.pdf

    普通高中人工智能教学策略初探——基于人脸识别的“人工智能初步”模块教学设计.pdf

    普通高中人工智能教学策略初探——基于人脸识别的“人工智能初步”模块教学设计 人工智能是当前最热门的技术之一,对于普通高中学生来说,学习人工智能可以帮助他们更好地适应未来技术的发展。普通高中人工智能教学...

    Virtools中文教程+SDK初探

    教程中的“基礎課程教材-愛迪斯提供”可能包含详细的步骤指南、实例项目和练习,以帮助你巩固所学知识,并逐步提高实践能力。通过这些实践,你将能够独立完成从简单的3D展示到复杂的交互式应用的开发。 总之,...

Global site tag (gtag.js) - Google Analytics