Javascript快速实现浏览器系统通知


Posted in Javascript onAugust 26, 2017

JS 实现浏览器的 title 闪烁、滚动、声音提示、chrome、Firefox、Safari等系统通知。

Javascript快速实现浏览器系统通知

下载

$ npm install title-notify --save-dev
$ bower install inotify --save-dev

编译

# 下载依赖工具
$ npm install 
# 压缩inotify
$ npm build
init
effect: flash | scroll | favicon
var iNotify = new iNotify().init()
//推荐下面写法
var iNotify = new iNotify({
 message: '有消息了。',//标题
 effect: 'flash', // flash | scroll 闪烁还是滚动
 openurl:"http://www.bing.com", // 点击弹窗打开连接地址
 onclick:function(){ //点击弹出的窗之行事件
  console.log("---")
 },
 //可选播放声音
 audio:{
  //可以使用数组传多种格式的声音文件
  file: ['msg.mp4','msg.mp3','msg.wav']
  //下面也是可以的哦
  //file: 'msg.mp4'
 },
 //标题闪烁,或者滚动速度
 interval: 1000,
 //可选,默认绿底白字的 Favicon
 updateFavicon:{
  // favicon 字体颜色
  textColor: "#fff",
  //背景颜色,设置背景颜色透明,将值设置为“transparent”
  backgroundColor: "#2F9A00" 
 },
 //可选chrome浏览器通知,默认不填写就是下面的内容
 notification:{
  title:"通知!",//设置标题
  icon:"",//设置图标 icon 默认为 Favicon
  body:'您来了一条新消息'//设置消息内容
 }
})

isPermission

判断浏览器弹框通知是否被阻止。

iNotify.isPermission()

声音设置

player

播放声音

iNotify.player()
loopPlay

自动播放声音

iNotify.loopPlay()
stopPlay

停止播放声音

iNotify.stopPlay()
setURL

设置播放声音URL

iNotify.setURL('msg.mp3')// 设置一个
iNotify.setURL(['msg.mp3','msg.ogg','msg.mp4']) // 设置多个

title通知

最新的版本默认不播放标题闪烁动画,初始化之后需要调用 setTitle(true) 方法才播放标题动画。

setTitle

设置标题,

iNotify.setTitle(true)//播放动画
iNotify.setTitle('新标题')//闪烁新标题
iNotify.setTitle()//清除闪烁 显示原来的标题
setInterval

 设置时间间隔

iNotify.setInterval(2000)
addTimer

添加计数器

iNotify.addTimer()
clearTimer

清除计数器

iNotify.clearTimer()

favicon通知

setFavicon

设置icon 显示数字

iNotify.setFavicon(10)
faviconClear

清除数字显示原来的icon

iNotify.faviconClear()

chrome通知

notify

弹出chrome通知,不传参数为预设值...

iNotify.notify(); 
iNotify.notify({
 title:"新通知",
 body:"打雷啦,下雨啦...",
 openurl:"http://www.bing.com",
 onclick:function(){
  console.log("---")
 }
});

其它

iNotify.init().title; 获取标题

例子

new iNotify({
 effect: 'flash',
 interval: 500
})

上面的例子跟下面的是一样的

new iNotify().init({
 effect: 'flash',
 interval: 500
});

实例一

function iconNotify(num){
 if(!notify) {
  var notify = new iNotify().init({
   effect: 'flash',
   interval: 500
  });
 }
 if(num===0){
  notify.faviconClear()
  notify.setTitle();
 }else if(num<100){
  notify.setFavicon(num)
  notify.setTitle("有新消息!");
 }else if(num>99){
  notify.setFavicon('..')
  notify.setTitle("有新消息!");
 }
}

实例二

var notify = new iNotify().init({
 effect: 'flash',
 interval: 500
});
notify.setFavicon("1")

实例三

var iN = new iNotify().init({
 effect: 'flash',
 interval: 500,
 message:"有消息拉!",
 updateFavicon:{//可选,默认绿底白字
  textColor: "#fff",// favicon 字体颜色
  backgroundColor: "#2F9A00" //背景颜色
 }
}).setFavicon(10);

实例四

var iN = new iNotify().init().setFavicon(5);

实例五

var iN = new iNotify().init({
 effect: 'flash',
 interval: 500,
 message:"有消息拉!",
 audio:{
  file: 'msg.mp4'
 }
}).setFavicon(10).player();

实例五

var iN = new iNotify().init({
 effect: 'flash',
 interval: 500,
 message:"有消息拉!",
 audio:{
  file: 'msg.mp4'//可以使用数组传多种格式的声音文件
 },
 notification:{
  title:"通知!",
  icon:"",
  body:'您来了一条新消息'
 }
}).setFavicon(10).player();
//弹出chrome通知,不传参数为预设值...
iN.notify(); 
iN.notify({
 title:"新通知",
 body:"打雷啦,下雨啦..."
});

实例六

var iN = new iNotify({
 effect: 'flash',
 interval: 500,
 message:"有消息拉!",
 audio:{
  file: ['msg.mp4','msg.mp3','msg.wav']
 },
 notification:{
  title:"通知!",
  body:'您来了一条新消息'
 }
})
iN.setFavicon(10).player();
var n = new iNotify()
n.init({
 effect: 'flash',
 interval: 500,
 message:"有消息拉!",
 audio:{
  file: ['openSub.mp4','openSub.mp3','openSub.wav']
 },
 notification:{
  title:"通知!",
  icon:"",
  body:'您来了一个客户'
 }
})
n.setFavicon(10).player();

总结

以上所述是小编给大家介绍的Javascript快速实现浏览器系统通知,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
javascript中的对象和数组的应用技巧
Jan 07 Javascript
JXTree对象,读取外部xml文件数据,生成树的函数
Apr 02 Javascript
jQuery ajax serialize()方法的使用以及常见问题解决
Jan 27 Javascript
可恶的ie8提示缺少id未定义
Mar 20 Javascript
jQuery实现限制文本框的输入长度
Jan 11 Javascript
vue-cli之router基本使用方法详解
Oct 17 Javascript
在Vue中使用Compass的方法
Mar 02 Javascript
JS中Promise函数then的奥秘探究
Jul 30 Javascript
在vue项目中优雅的使用SVG的方法实例详解
Dec 03 Javascript
详解vue-cli 2.0配置文件(小结)
Jan 14 Javascript
JavaScript实现的开关灯泡点击切换特效示例
Jul 08 Javascript
javascript贪吃蛇游戏设计与实现
Sep 17 Javascript
深入浅出es6模板字符串
Aug 26 #Javascript
vue与bootstrap实现时间选择器的示例代码
Aug 26 #Javascript
详解Angular4 路由设置相关
Aug 26 #Javascript
浅谈Angular路由守卫
Aug 26 #Javascript
javascript实现文字无缝滚动效果
Aug 26 #Javascript
node实现定时发送邮件的示例代码
Aug 26 #Javascript
详解webpack3如何正确引用并使用jQuery库
Aug 26 #jQuery
You might like
全国FM电台频率大全 - 19 广东省
2020/03/11 无线电
PHP 5.3 下载时 VC9、VC6、Thread Safe、Non Thread Safe的区别分析
2011/03/28 PHP
浅析php fwrite写入txt文件的时候用 \r\n不能换行的问题
2013/08/06 PHP
input的focus方法使用
2010/03/13 Javascript
ASP.NET jQuery 实例7 通过jQuery来获取DropDownList的Text/Value属性值
2012/02/03 Javascript
js multiple全选与取消全选实现代码
2012/12/04 Javascript
jquery()函数的三种语法介绍
2013/10/09 Javascript
JS实现闭包中的沙箱模式示例
2017/09/07 Javascript
bootstrap table实现双击可编辑、添加、删除行功能
2017/09/27 Javascript
解决Vue.js 2.0 有时双向绑定img src属性失败的问题
2018/03/14 Javascript
vue的全局变量和全局拦截请求器的示例代码
2018/09/13 Javascript
Vue 实现前进刷新后退不刷新的效果
2019/06/14 Javascript
微信小程序获取位置展示地图并标注信息的实例代码
2019/09/01 Javascript
Layui多选只有最后一个值的解决方法
2019/09/02 Javascript
通过vue写一个瀑布流插件代码实例
2019/09/07 Javascript
layui点击弹框页面 表单请求的方法
2019/09/21 Javascript
JavaScript实现简单日历效果
2020/09/11 Javascript
vue中实现点击空白区域关闭弹窗的两种方法
2020/12/30 Vue.js
利用Django框架中select_related和prefetch_related函数对数据库查询优化
2015/04/01 Python
Python装饰器入门学习教程(九步学习)
2016/01/28 Python
python读取图片并修改格式与大小的方法
2018/07/24 Python
python实现从文件中读取数据并绘制成 x y 轴图形的方法
2018/10/14 Python
python TF-IDF算法实现文本关键词提取
2019/05/29 Python
pandas读取CSV文件时查看修改各列的数据类型格式
2019/07/07 Python
使用OpCode绕过Python沙箱的方法详解
2019/09/03 Python
python元组和字典的内建函数实例详解
2019/10/22 Python
使用python的pyplot绘制函数实例
2020/02/13 Python
css背景图片的背景裁切、背景透明度、背景变换等效果运用
2012/12/24 HTML / CSS
惠普美国官方商店:HP Official Store
2016/08/28 全球购物
数控技术应用个人求职信范文
2014/02/03 职场文书
大学生军训自我鉴定范文
2014/09/18 职场文书
2015员工年度考核评语
2015/03/25 职场文书
2015年煤矿工作总结
2015/04/28 职场文书
迎新生欢迎词2015
2015/07/16 职场文书
关于感恩的作文
2019/08/26 职场文书
如何Python使用re模块实现okenizer
2022/04/30 Python