成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

html5系列:notification api升級——從webkitNotifications到N

Jrain / 1315人閱讀

摘要:從開始,就被取消了,只能使用標準化的。獲取權(quán)限無論是新版還是老版的,都是需要得到用戶的批準,才能獲取到相應(yīng)的權(quán)限。老版獲取權(quán)限的方式是這樣的通過方法檢查當前是否已獲得權(quán)限。調(diào)用剛剛創(chuàng)建的對象的方法來進行顯示。

最近又鼓搗起兩年前做的一個chrome擴展,想要跑起來卻發(fā)現(xiàn)報錯了,看了下console,首先是indexedDB報錯,說是window.webkitIndexedDB已經(jīng)被廢棄了,用window.indexedDB代替后,就沒再報錯了,看來我這chrome 46indexedDB api只是改了個更通用的名稱,還是比較厚道的,所以,這里就不詳述了。
真正出問題的是桌面通知,chrome 46給我報的錯是window.webkitNotifications不是個對象,這可坑爹了都沒提示我要換成什么。馬上百度谷歌一起上,排名前列的大部分都是我當年就看到的老資料,好不容易找到最新的資料,測試可用,下面介紹一下新版的window.Notifications與老版的window.webkitNotifications有什么區(qū)別。

chrome 22開始,webkitNotifications就被取消了,只能使用標準化的Notification

獲取權(quán)限

無論是新版還是老版的notification api,都是需要得到用戶的批準,才能獲取到相應(yīng)的api權(quán)限。
老版獲取權(quán)限的方式是這樣的:

通過checkPermission()方法檢查當前是否已獲得權(quán)限。

若尚未獲得權(quán)限,則調(diào)用requestPermission()方法向用戶請求權(quán)限。

而新版取消了checkPermission()方法,直接通過requestPermission()方法完成查詢權(quán)限及獲取權(quán)限這兩項任務(wù),具體代碼如下:

Notification.requestPermission(function(status){  //status值有三種:default/granted/denied
  if(Notification.permission !== status){
    Notification.permission = status;
  }
});
創(chuàng)建消息

重點來了,老版是這樣的:

利用window.webkitNotifications.createNotification()或window.webkitNotifications.createHTMLNotification()方法來創(chuàng)建一個Notification對象。

調(diào)用剛剛創(chuàng)建的Notification對象的show()方法來進行顯示。

新版則又精簡了一點,直接new一個Notification對象,在new的時候把桌面通知的參數(shù)都傳進去,這桌面通知就會馬上顯示,具體代碼看下方:

var options={
            dir: "ltr",  //控制方向,據(jù)說目前瀏覽器還不支持
            lang: "utf-8",
            icon: "http://ihuster.com/static/avatar/m_default.png",
            body: "你好呀,歡迎留言交流呀"
        };
var n = new Notification("hello word!", options); 

另外新版還有一點不同的是,提供了4個事件:

onshow()

onclick()

onclose()

onerror()

參考文章:

《使用HTML5 Notification API開啟瀏覽器桌面提醒》

《使用 Web Notifications》

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/91564.html

相關(guān)文章

  • 【譯】雜談:HTML 5的消息通知機制

    摘要:原文譯文的消息通知機制譯者已經(jīng)被應(yīng)用到開發(fā)中。所以先要征求用戶的許可而不是直接顯示通知。然后,獲取用戶許可之后,我們可以顯示兩種類型的信息最后執(zhí)行通知代碼。 原文:HTML 5 Notification 譯文:HTML 5 的消息通知機制 譯者:dwqs showImg(https://segmentfault.com/img/bVks7a); HTML 5 已經(jīng)被應(yīng)用到Web...

    付倫 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<