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 相关文章推荐
EasyUI 中 MenuButton 的使用方法
Jul 14 Javascript
使用js正则控制input标签只允许输入的值
Jul 29 Javascript
js 对小数加法精度处理示例说明
Dec 27 Javascript
批量下载对路网图片并生成html的实现方法
Jun 07 Javascript
运用js教你轻松制作html音乐播放器
Apr 17 Javascript
如何实现json数据可视化详解
Nov 24 Javascript
Vuex之理解Getters的用法实例
Apr 19 Javascript
详解webpack打包vue时提取css
May 26 Javascript
layui中table表头样式修改方法
Aug 15 Javascript
jQuery实现根据身份证号获取生日、年龄、性别等信息的方法
Jan 09 jQuery
JS判断两个数组或对象是否相同的方法示例
Feb 28 Javascript
Jquery滑动门/tab切换实现方法完整示例
Jun 05 jQuery
深入浅出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
用PHP查询搜索引擎排名位置的代码
2010/01/05 PHP
一些PHP Coding Tips(php小技巧)[2011/04/02最后更新]
2011/05/02 PHP
Php Ctemplate引擎开发相关内容
2012/03/03 PHP
浅谈php中mysql与mysqli的区别分析
2013/06/10 PHP
PHP中使用数组指针函数操作数组示例
2014/11/19 PHP
PHP开发框架laravel安装与配置教程
2015/03/13 PHP
php实现水印文字和缩略图的方法示例
2016/12/29 PHP
PHP封装的mysqli数据库操作类示例
2019/02/16 PHP
禁止JQuery中的load方法装载IE缓存中文件的方法
2009/09/11 Javascript
ExtJS4 动态生成的grid导出为excel示例
2014/05/02 Javascript
js获取新浪天气接口的实现代码
2016/06/06 Javascript
jquery attr()设置和获取属性值实例教程
2016/09/25 Javascript
微信小程序开发之录音机 音频播放 动画实例 (真机可用)
2016/12/08 Javascript
关于vue面试题汇总
2018/03/20 Javascript
Vue实现自定义下拉菜单功能
2018/07/16 Javascript
使用pm2自动化部署node项目的方法步骤
2019/01/28 Javascript
vue实现select下拉显示隐藏功能
2019/09/30 Javascript
vue+element导航栏高亮显示的解决方式
2019/11/12 Javascript
动感网页相册 python编写简单文件夹内图片浏览工具
2016/08/17 Python
Python基于matplotlib实现绘制三维图形功能示例
2018/01/18 Python
Python闭包执行时值的传递方式实例分析
2018/06/04 Python
python pandas生成时间列表
2019/06/29 Python
python 获取等间隔的数组实例
2019/07/04 Python
Pytorch加载部分预训练模型的参数实例
2019/08/18 Python
基于python修改srt字幕的时间轴
2020/02/03 Python
Python编程快速上手——疯狂填词程序实现方法分析
2020/02/29 Python
Python新手如何理解循环加载模块
2020/05/29 Python
Python实现画图软件功能方法详解
2020/07/28 Python
基于Python爬取京东双十一商品价格曲线
2020/10/23 Python
python boto和boto3操作bucket的示例
2020/10/30 Python
Python读取ini配置文件传参的简单示例
2021/01/05 Python
Shopping happy life西班牙:以最优惠的价格提供最好的时尚配饰
2020/03/13 全球购物
介绍一下Ruby的特点
2013/01/20 面试题
《鸟岛》教学反思
2014/04/26 职场文书
作风转变心得体会
2014/09/02 职场文书
2016元旦晚会主持词
2015/07/01 职场文书