来说下 桌面通知 Notification,HTML5支持 Web Notifications 的实例,但是要经过用户允许, 
chrome://settings/content/notifications

设置/高级设置/内容设置/通知 里查看哪些是禁止或授权的,还可以在网页栏左边查看

代码如下

 if (window.Notification) {
if (Notification.permission != "granted") {
Notification.requestPermission(function (permission) {
MyNotification();
});
}else{
MyNotification();
}
//禁止了弹窗
function MyNotification() {
if (Notification.permission == "granted") {
var notification = new Notification("标题", {
body: "内容",
icon: "https://www.baidu.com/img/bd_logo1.png"
});
//消息框被点击事件
notification.onclick = function () {
notification.close();
};
notification.onshow = function () {
setTimeout(function () {
notification.close();
}, 5000);
};
}
}
} else {
alert("不支持Notification");
}

 

效果如下:

Chrome 自己的notifications 的授权是在manifest.json 文件中,需要用户点击授权按钮。

事说下扩展结构 ,3个文件,manifest.json,一个js文件,一个图片icon文件。

manifest.json 代码如下

 {
"manifest_version": 2,
"name": "消息提示",
"version": "1.0.0",
"permissions": [
"notifications"
],
"background": {"scripts": [
"notifications.js"
]}
}

notifications.js 代码如下

 /*    桌面消息通知
* _msg 消息内容
* _title 标题
* _ico 图标
* _time 多少毫秒后销毁
*/
function myNotification(_msg,_title,_ico,_time){
var ico = _ico || "ico/icon.png";
var title = _title || "通知";
var msg = String(_msg)|| "消息!";
var time = _time || 5000;
//显示一个桌面通知
if(window.webkitNotifications){
var notification = window.webkitNotifications.createNotification(ico,title,msg);
notification.show();
setTimeout(function(){notification.cancel();}, time);
}else if(chrome.notifications){
var opt = {
type: 'basic',
title: title,
message: msg,
iconUrl:ico,
}
chrome.notifications.create('', opt, function(id){
setTimeout(function(){
chrome.notifications.clear(id, function(){});
}, time);
});
}
};

 

这段代码是运行在 后台的,所以只能后台调用

如 myNotification("标题","你好世界");

这样就能 以弹窗的形式 ,提示用户 已抢了多少宝箱了,,收益如何。。

最新文章

  1. memcpy函数用法
  2. Cause: org.apache.ibatis.reflection.ReflectionException: Could not set property 'orderdetails' of 'class com.luchao.mybatis.first.po.Orders' with value 'Orderdetail [id=null, ordersId=3, itemsId=1, it
  3. MIT 6.828 JOS学习笔记1. Lab 1 Part 1: PC Bootstrap
  4. 【转】Unity中的协同程序-使用Promise进行封装(三)
  5. Arcgis10.2 破解注意问题
  6. iOS 杂笔-20(UIView和CALayer的区别与联系)
  7. Android的onCreateOptionsMenu()创建菜单Menu详解(转)
  8. [原]打造Python开发环境之Python环境
  9. PL/pgSQL学习笔记之一
  10. Oracle 10g创建表空间的完整步骤详解
  11. google python/c++ code style naming
  12. cs模式与bs模式
  13. 使用命令行将Excel数据表导入Mysql中的方法小结
  14. JBoss7 如何用脚本 启动 和 停止
  15. React Native 系列(六) -- PropTypes
  16. python列表补充、循环
  17. Android:ImageView控件显示图片
  18. ng-select 下拉的两种方式
  19. GitLab在centos7上安装和使用
  20. C# 与Sql server 获取数据和执行命令

热门文章

  1. Pandas——读取csv,txt文件
  2. 167. Two Sum II - Input array is sorted两数之和
  3. 【转】tnsping不通,则需设置TNS_ADMIN环境变量
  4. Python flask虚拟环境安装
  5. P1742 最小圆覆盖
  6. WebForm与MVC混用 (转)
  7. CF1117G Recursive Queries
  8. maven 配置jetty 插件
  9. HDU计算机学院大学生程序设计竞赛(2015’12)The Magic Tower
  10. linux 学习 (基于ubuntu)