iNotify

说明 #

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

这是重复造轮子...,标题闪烁、或者滚动提示,favicon数字显示。打开chrome浏览器调试工具,按照下面截图的方式放到调试里面调用一下,你就可以看到效果了。

界面预览

测试例子 #

请点击我测试一下!

  1. 上面"请点击我测试一下!"测试例子中初始化参数 audio.file 中设置的声音文件不存在,所以需要您引用有效声音文件。
  2. 弹窗通知 notify 必须在加载的时候允许通知。如果阻止了将无法实现弹窗通知效果。
<script type="text/javascript" src="https://rawgit.com/jaywcjlove/iNotify/master/src/iNotify.js"></script>
<a href="javascript:inotifyTest()">请点击我测试一下!</a>
<script type="text/javascript">
var iN = new iNotify({
    effect: 'flash',
    interval: 500,
    message:"有消息拉!2",
    audio:{
        file: ['s/msg.mp4','s/msg.mp3','s/msg.wav']
    },
    notification:{
        title:"通知!",
        body:'您来了一条新消息'
    }
});

function inotifyTest(){
    iN.setFavicon(10).setTitle('新标题').notify({
        title:"新通知",
        body:"打雷啦,下雨啦..."
    }).player()
}
</script>

下载 #

npm #

$ npm install title-notify

bower #

$ bower install inotify

init #

effect: flash | scroll | favicon

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:'您来了一条新消息'//设置消息内容
    }
})

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()

浏览器通知 #

notify #

弹出浏览器的通知,不传参数则为预设值...

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();