如何進行html5中Notifycations應(yīng)用-創(chuàng)新互聯(lián)

這期內(nèi)容當(dāng)中小編將會給大家?guī)碛嘘P(guān)如何進行html5中Notifycations應(yīng)用,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

綠春網(wǎng)站建設(shè)公司成都創(chuàng)新互聯(lián),綠春網(wǎng)站設(shè)計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗。已為綠春成百上千提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站建設(shè)公司要多少錢,請找那個售后服務(wù)好的綠春做網(wǎng)站的公司定做!

HTML5中的桌面提醒(web notifications)可以在當(dāng)前頁面窗口彈出一個消息框,這個消息框是跨 Tab 窗口的,這在用戶打開多個 tab 瀏覽網(wǎng)頁時,提醒比較方便,容易讓用戶看到。目前只要是 webkit 內(nèi)核支持該功能。
該功能在 chrome 下需要以 http 方式打開網(wǎng)頁才能啟用。
桌面提醒功能由 window.webkitNotifications 對象實現(xiàn)(webkit內(nèi)核)。
window.webkitNotifications 對象沒有屬性,有四個方法:
1.requestPermission()
該方法用于向用戶申請消息提醒權(quán)限,如果當(dāng)前沒有開放該權(quán)限,瀏覽器將彈出授權(quán)界面,用戶授權(quán)后,在對象內(nèi)部產(chǎn)生一個狀態(tài)值(一個0、1或 2 的整數(shù)):
0:表示用戶同意消息提醒,只在該狀態(tài)下可以使用信息提醒功能;
1:表示默認狀態(tài),用戶既未拒絕,也未同意;
2:表示用戶拒絕消息提醒。
2.checkPermission()
這個方法用于獲取 requestPermission() 申請到的權(quán)限的狀態(tài)值。
3.createNotification()
這個方法以純消息的方式創(chuàng)建提醒消息,它接受三個字符串參數(shù):
iconURL:在消息中顯示的圖標(biāo)地址,
title:消息的標(biāo)題,
body:消息主體文本內(nèi)容
該方法會返回一個 Notification對象,可以針對這個對象做更多的設(shè)置。
Notification 對象的屬性與方法:



代碼如下:


dir: ""
onclick: null
onclose: null
ondisplay: function (event) {
onerror: null
onshow: null
replaceId: ""
tag: ""
__proto__: Notification
addEventListener: function addEventListener() { [native code] }
cancel: function cancel() { [native code] }
close: function close() { [native code] }
constructor: function Notification() { [native code] }
dispatchEvent: function dispatchEvent() { [native code] }
removeEventListener: function removeEventListener() { [native code] }
show: function show() { [native code] }
__proto__: Object



dir:設(shè)置消息的排列方向,可取值為“auto”(自動), “l(fā)tr”(left to right), “rtl”(right to left)。
tag:為消息添加標(biāo)簽名。如果設(shè)置此屬性,當(dāng)有新消息提醒時,標(biāo)簽相同的消息只顯示在同一個消息框,后一個消息框會替換先前一個,否則出現(xiàn)多個消息提示框,但是最多值顯示3個消息框,超過3個,后繼消息通知會被阻塞。
onshow:當(dāng)消息框顯示的時候觸發(fā)該事件;
onclick: 當(dāng)點擊消息框的時候觸發(fā)該事件;
onclose:當(dāng)消息關(guān)閉的時候觸發(fā)該事件;
onerror:當(dāng)出現(xiàn)錯誤的時候觸發(fā)該事件;
方法:
addEventListener && removeEventListener:常規(guī)的添加和移除事件方法;
show:顯示消息提醒框;
close:關(guān)閉消息提醒框;
cancel:關(guān)閉消息提醒框,和 close一樣;
4.createHTMLNotification()
該方法與 createNotification() 不同的是,他以HTML方式創(chuàng)建消息,接受一個參數(shù): HTML 文件的URL,該方法同樣返回 Notification對象。
一個實例:



代碼如下:


<!DOCTYPE HTML>
<html>
<head>
<title>notifications in HTML5</title>
</head>
<body>
<form>
<input id="trynotification" type="button" value="Send notification" />
</form>
<script type="text/javascript">
document.getElementById("trynotification").onclick = function(){
notify(Math.random());
};
function notify(tab) {
if (!window.webkitNotifications) {
return false;
}
var permission = window.webkitNotifications.checkPermission();
if(permission!=0){
window.webkitNotifications.requestPermission();
var requestTime = new Date();
var waitTime = 5000;
var checkPerMiniSec = 100;
setTimeout(function(){
permission = window.webkitNotifications.checkPermission();
if(permission==0){
createNotification(tab);
}else if(new Date()-requestTime<waitTime){
setTimeout(arguments.callee,checkPerMiniSec);
}
},checkPerMiniSec);
}else if(permission==0){
createNotification(tab);
}
}
function createNotification(tab){
var showSec = 10000;
var icon = "http://tech.baidu.com/resource/img/logo_news_137_46.png";
var title = "[" + new Date().toLocaleTimeString() + "] close after " + (showSec/1000) + " seconds";
var body = "hello world, i am webkitNotifications informations";
var popup = window.webkitNotifications.createNotification(icon, title, body);
popup.tag = tab;
popup.ondisplay = function(event) {
setTimeout(function() {
event.currentTarget.cancel();
}, showSec);
}
popup.show();
}
</script>
</body>
</html>


上述就是小編為大家分享的如何進行html5中Notifycations應(yīng)用了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

網(wǎng)頁標(biāo)題:如何進行html5中Notifycations應(yīng)用-創(chuàng)新互聯(lián)
文章轉(zhuǎn)載:http://muchs.cn/article18/dschgp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)建站、企業(yè)網(wǎng)站制作網(wǎng)頁設(shè)計公司、品牌網(wǎng)站建設(shè)網(wǎng)站維護、全網(wǎng)營銷推廣

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化