来说下 桌面通知 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("标题","你好世界");

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

斗鱼扩展--notifications提示(十二)的更多相关文章

  1. 「十二省联考 2019」皮配——dp

    题目 [题目描述] #### 题目背景一年一度的综艺节目<中国好码农>又开始了.本季度,好码农由 Yazid.Zayid.小 R.大 R 四位梦想导师坐镇,他们都将组建自己的梦想战队,并率 ...

  2. 「十二省联考 2019」字符串问题——SAM+DAG

    题目 [题目描述] Yazid 和 Tiffany 喜欢字符串问题.在这里,我们将给你介绍一些关于字符串的基本概念. 对于一个字符串 $S$, 我们定义 $\lvert S\rvert$ 表示 $S$ ...

  3. NeHe OpenGL教程 第二十二课:凹凸映射

    转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...

  4. 《Linux命令行与shell脚本编程大全》 第二十二章 学习笔记

    第二十二章:使用其他shell 什么是dash shell Debian的dash shell是ash shell的直系后代,ash shell是Unix系统上原来地Bourne shell的简化版本 ...

  5. Python开发【第二十二篇】:Web框架之Django【进阶】

    Python开发[第二十二篇]:Web框架之Django[进阶]   猛击这里:http://www.cnblogs.com/wupeiqi/articles/5246483.html 博客园 首页 ...

  6. SQL Server 2008空间数据应用系列十二:Bing Maps中呈现GeoRSS订阅的空间数据

    原文:SQL Server 2008空间数据应用系列十二:Bing Maps中呈现GeoRSS订阅的空间数据 友情提示,您阅读本篇博文的先决条件如下: 1.本文示例基于Microsoft SQL Se ...

  7. 【OpenCV新手教程之十二】OpenCV边缘检測:Canny算子,Sobel算子,Laplace算子,Scharr滤波器合辑

    本系列文章由@浅墨_毛星云 出品,转载请注明出处. 文章链接:http://blog.csdn.net/poem_qianmo/article/details/25560901 作者:毛星云(浅墨) ...

  8. java之jvm学习笔记六-十二(实践写自己的安全管理器)(jar包的代码认证和签名) (实践对jar包的代码签名) (策略文件)(策略和保护域) (访问控制器) (访问控制器的栈校验机制) (jvm基本结构)

    java之jvm学习笔记六(实践写自己的安全管理器) 安全管理器SecurityManager里设计的内容实在是非常的庞大,它的核心方法就是checkPerssiom这个方法里又调用 AccessCo ...

  9. Alamofire源码解读系列(十二)之请求(Request)

    本篇是Alamofire中的请求抽象层的讲解 前言 在Alamofire中,围绕着Request,设计了很多额外的特性,这也恰恰表明,Request是所有请求的基础部分和发起点.这无疑给我们一个Req ...

随机推荐

  1. RedHat6安装git

    通过yum安装git : 一. 先配置yum: 把redhat系统镜像加载到电脑光驱中(无光驱可用u盘),然后把该镜像配置到环境变量中 文件名不限 在此新建的RHEL_6文件中添加如下内容 其中bas ...

  2. UISplitViewController

    前言 大多数时候,iPhone.iPod 应用与 iPad 应用开发没有太大的区别,但是 iPad 的屏幕比 iPhone 大, 设计程序时可以充分利用 iPad 的大屏幕特点,例如 TabBar 和 ...

  3. 基于vue框架项目开发过程中遇到的问题总结(二)

    1.mouseup事件丢失 查看了网上资料,造成mouseup事件丢失有两种原因: (1)触发了浏览器的drag事件 (2)由于鼠标离开了操作的区域,触发了mouseleave事件导致mouseup丢 ...

  4. Jmeter解决乱码问题

    一.设置编码方式utf-8并勾选编码 适用场景:参数中含有中文或乱码 二.增加beanshell脚本 添加BeanShell PostProcessor或者BeanShell Sampler,输入代码 ...

  5. linux进程切换问题

    #define switch_to(prev,next,last) do { \ unsigned long esi,edi; \ asm volatile("pushfl\n\t" ...

  6. pytorch实现squeezenet

    squeezenet是16年发布的一款轻量级网络模型,模型很小,只有4.8M,可用于移动设备,嵌入式设备. 关于squeezenet的原理可自行阅读论文或查找博客,这里主要解读下pytorch对squ ...

  7. Subversion Server Edge的安装使用

    1.Subversion Server Edge的搭建 当在操作系统为64位的配置服务器上部署时只能够选择Collabnet Subversion Edge,它集合了Subversion所需要一切资源 ...

  8. [Maven]How do I tell Maven to use the latest version of a dependency?

    Link: http://stackoverflow.com/questions/30571/how-do-i-tell-maven-to-use-the-latest-version-of-a-de ...

  9. ssh免密登录linux服务器

    Ssh免密登录 sshd服务 sshd简介: SSH 密钥为登录 Linux 服务器提供了更好且安全的机制.运行 ssh-keygen 后,将会生成公私密钥对.你可以将公钥放置到任意服务器,从持有私钥 ...

  10. Python十大应用领域与就业方向

    参考链接:https://baijiahao.baidu.com/s?id=1604847283884842928&wfr=spider&for=pc 正文: 近些年,编程语言Pyth ...