日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

JavaScript 兼容新旧版chrome和firefox的桌面通知

發(fā)布時間:2025/4/9 56 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JavaScript 兼容新旧版chrome和firefox的桌面通知 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

1.新/舊版本的chrome和firefox都可支持,IE下不支持因此設置為了在最小化窗口處閃爍顯示提示文字。

2.設置為提示窗口顯示5秒即關閉。

3.可設置圖標和點擊提示窗口要跳轉到的頁面(見輸入參數(shù))。

?

var timer = null, title = $('title').text(); $('body').on('click', function() { clearInterval(timer); $('title').text(title); }); function showMsgNotification(title, msg , iconUrl ,clickUrl) { var Notification = window.Notification || window.mozNotification || window.webkitNotification; if (window.webkitNotifications) { //chrome老版本 if (window.webkitNotifications.checkPermission() == 0) { var notif = window.webkitNotifications.createNotification(iconUrl, title, msg); notif.display = function() {setTimeout(function() {notif.close();}, 5000);} notif.onerror = function() {} notif.onclose = function() {} notif.onclick = function() {window.focus();window.location.href = clickUrl;} notif.replaceId = 'Meteoric'; notif.show(); } else { window.webkitNotifications.requestPermission($jy.notify); } }else if(Notification) {//支持桌面通知 if(Notification.permission == "granted") {//已經允許通知 var instance = new Notification(title, { body: msg, icon: iconUrl //renotify : true }); instance.onclick = function() { //$('body').css({'background': 'red'}); //console.log('onclick'); window.focus();window.location.href = clickUrl;//window.open(clickUrl, "_blank"); }; instance.onerror = function() { //console.log('onerror'); }; instance.onshow = function() { setTimeout(function() {instance.close();}, 5000);}; instance.onclose = function() { //console.log('onclose'); }; }else {//第一次詢問或已經禁止通知(如果用戶之前已經禁止顯示通知,那么瀏覽器不會再次詢問用戶的意見,Notification.requestPermission()方法無效) Notification.requestPermission(function(status) { if (status === "granted") {//用戶允許 var instance = new Notification(title, { body: msg, icon: iconUrl }); instance.onclick = function() { window.focus();window.location.href = clickUrl;}; instance.onerror = function() { // Something to do }; instance.onshow = function() { // Something to do }; instance.onclose = function() { // Something to do }; }else {//用戶禁止 return false; } }); } }else {//不支持(IE等) var index = 0; clearInterval(timer); timer = setInterval(function() { if(index%2) { $('title').text('【   】'+ title);//這里是中文全角空格,其他不行 }else { $('title').text('【快訊】'+ title); } index++; if(index > 20) { clearInterval(timer); } }, 500); } }

?

轉載于:https://www.cnblogs.com/xcxcxcxc/p/6515896.html

總結

以上是生活随笔為你收集整理的JavaScript 兼容新旧版chrome和firefox的桌面通知的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。