npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

title-notify

v1.1.1

Published

JS achieve the browser title flashing , scrolling, voice prompts , chrome notice.

Downloads

159

Readme

通知

⚠️ 请使用 iNotify 2.x,不再支持 1.x 版本 。

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

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

界面预览

下载

$ 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("on click")
    },
    onshow:function(){
       console.log("on show")
    },
});
  • title 一定会被显示的通知标题。
  • dir 文字的方向;它的值可以是 auto(自动), ltr(从左到右), or rtl(从右到左)。
  • icon 一个图片的URL,将被用于显示通知的图标。
  • body 通知中额外显示的字符串。
  • openurl 点击打开指定 URL。
  • onclick 每当用户点击通知时被触发。
  • onshow 当通知显示的时候被触发。
  • onerror 每当通知遇到错误时被触发。
  • onclose 当用户关闭通知时被触发。

其它

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