1. 程式人生 > 其它 >如何實現HTML5 Notification 桌面推送(無需域名)

如何實現HTML5 Notification 桌面推送(無需域名)

技術標籤:筆記html5js

之前涉及到要做B/S架構的 瀏覽器windows桌面的訊息提醒,然後在網上找到了Notification的訊息推送。發現這類的文章挺少的,故此寫下來包裝了一下方法記錄一下以後用,參考知乎大佬的文章:

原文連結:

https://zhuanlan.zhihu.com/p/133128563

前端JS程式碼如下:

   function spawnNotification(theBody, theIcon, theTitle) {
            //debugger
            //更多的屬性請自行百度  我這裡只用到了:正文內容,圖示,推送標題
            let options = {
                body: theBody,
                icon: theIcon
            }

            // 先檢查瀏覽器是否支援
            if (!('Notification' in window)) {
                // IE瀏覽器不支援傳送Notification通知!
            } else {
                if (Notification.permission !== 'denied') {
                    //判斷是否授權,沒授權先授權在通知
                    Notification.requestPermission(function (permission) {
                        // 如果使用者同意,就可以向他們傳送通知
                        if (permission === 'granted') {
                            let n = new Notification(theTitle, options);
                        }
                    });
                } else {
                    //已授權直接通知
                    let n = new Notification(theTitle, options);
                }
            }


        }

如果使用者初次訪問你的頁面,左上角會彈出

點選允許以後,預設再也不會提示;

注意:我使用的是谷歌瀏覽器,Notification對IE不相容,360瀏覽器相容不友好,但這種無需域名的方式還是很便捷的。