window.addEventListener('load', function () { //確認使用者是否允許跳窗,如果沒有,就跳窗取權限 if (window.Notification && Notification.permission !== "granted") { Notification.requestPermission(function (status) { if (Notification.permission !== status) { Notification.permission = status; } }); } function NotifyMsg() { var option = { tag: 'Notification', body: '測試測試測試', data: 'I am a data', icon: '' //可以自訂ICON } var n = new Notification("Title", option); setTimeout(n.close.bind(n), 5000); console.log(n.data); n.onclick = function (event) { event.preventDefault(); // prevent the browser from focusing the Notification's tab window.open('http://www.google.com.tw/', '_blank'); } } var button = document.getElementsByTagName('button')[0]; button.addEventListener('click', function () { // If the user agreed to get notified // Let's try to send ten notifications if (window.Notification && Notification.permission === "granted") { NotifyMsg(); } // If the user hasn't told if he wants to be notified or not // Note: because of Chrome, we are not sure the permission property // is set, therefore it's unsafe to check for the "default" value. else if (window.Notification && Notification.permission !== "denied") { Notification.requestPermission(function (status) { if (status === "granted") { NotifyMsg(); } // Otherwise, we can fallback to a regular modal alert else { alert("Hi!"); } }); } // If the user refuses to get notified else { // We can fallback to a regular modal alert alert("Hi!"); } }); });
參考資料: MDN
沒有留言:
張貼留言