JS 實現瀏覽器的 title 閃爍、滾動、聲音提示、chrome、Firefox、Safari等系統通知。git
Demo 先start github
這是重複造輪子...,標題閃爍、或者滾動提示,favicon數字顯示。打開chrome瀏覽器調試工具,按照下面截圖的方式放到調試裏面調用一下,你就能夠看到效果了。chrome
$ npm install title-notify
$ bower install inotify
effect: flash | scroll | faviconnpm
var iNotify = new iNotify().init() //推薦下面寫法 var iNotify = new iNotify({ message: '有消息了。',//標題 effect: 'flash', // flash | scroll 閃爍仍是滾動 //可選播放聲音 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:'您來了一條新消息'//設置消息內容 } })
判斷瀏覽器彈框通知是否被阻止。數組
iNotify.isPermission()
播放聲音瀏覽器
iNotify.player()
自動播放聲音svg
iNotify.loopPlay()
中止播放聲音工具
iNotify.stopPlay()
設置播放聲音URLoop
iNotify.setURL('msg.mp3')// 設置一個 iNotify.setURL(['msg.mp3','msg.ogg','msg.mp4']) // 設置多個
最新的版本默認不播放標題閃爍動畫,初始化以後須要調用 setTitle(true)
方法才播放標題動畫。字體
設置標題,
iNotify.setTitle(true)//播放動畫 iNotify.setTitle('新標題')//閃爍新標題 iNotify.setTitle()//清除閃爍 顯示原來的標題
設置時間間隔
iNotify.setInterval(2000)
添加計數器
iNotify.addTimer()
清除計數器
iNotify.clearTimer()
設置icon 顯示數字
iNotify.setFavicon(10)
清除數字顯示原來的icon
iNotify.faviconClear()
彈出chrome通知,不傳參數爲預設值...
iNotify.notify(); iNotify.notify({ title:"新通知", body:"打雷啦,下雨啦..." });
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:"通知!", body:'您來了一個客戶' } }) n.setFavicon(10).player();