摘要:消息提示無非三種方式聲音提示,桌面彈窗和閃爍提醒。聲音提示注意聲音提示前提示已經(jīng)加載了聲音文件,有文章寫的很多是臨時一個對象,然后這樣做是非常不好的,因為你每次調(diào)用聲音的時候都會去后臺請求一下這個聲音文件。所以先加載出來是最好的方法。
web消息提示無非三種方式:聲音提示,桌面彈窗和title閃爍提醒。下面做一一介紹。
聲音提示注意聲音提示前提示已經(jīng)加載了聲音文件,有文章寫的很多是臨時create一個audio對象,然后audio.src,這樣做是非常不好的,因為你每次調(diào)用聲音的時候都會去后臺請求一下這個聲音文件。所以先加載出來是最好的方法。
function playAudio() { document.getElementById("chat-audio").play(); //pause()方法也可以暫停,具體可查html5的audio標(biāo)簽 } //調(diào)用方式 playAudio();桌面彈窗
function palyDeskNotice(theTitle, options) { if (Notification.permission !== "granted") { //先判斷一下用戶是否已經(jīng)開啟了桌面提示的權(quán)限,如果沒有則提醒用戶開啟 window.Notification.requestPermission(function(permission) { if (permission === "granted") showNotice(theTitle, options); }); } else { showNotice(theTitle, options); } } function showNotice(theTitle, options) { //這個就是桌面彈窗 var desknotice = new Notification(theTitle, options); desknotice.onclick = function() { //當(dāng)用戶點擊彈窗的時候,要定位到聊天窗口 window.focus(); desknotice.close(); }; //頁面退出時關(guān)閉提醒 window.onbeforeunload = function() { desknotice.close(); } //彈窗3秒后自動消失 setTimeout(desknotice.close.bind(desknotice), 3000); } //調(diào)用方式 palyDeskNotice("來自xxx", { body: "內(nèi)容", icon: "images/xxx.jpg" });title閃爍提醒的原理
var NewMsgNoticeflag = false,//閃爍標(biāo)識 newMsgNotinceTimer = null; function newMsgCount() { if (NewMsgNoticeflag) { NewMsgNoticeflag = false; document.title = "【?新消息】您有新的即時消息"; } else { NewMsgNoticeflag = true; document.title = "【 】您有新的即時消息"; } } //兼容性 var hiddenProperty = "hidden" in document ? "hidden" : "webkitHidden" in document ? "webkitHidden" : "mozHidden" in document ? "mozHidden" : null; var visibilityChangeEvent = hiddenProperty.replace(/hidden/i, "visibilitychange"); var onVisibilityChange = function() { if (!document[hiddenProperty]) { clearInterval(newMsgNotinceTimer); newMsgNotinceTimer = null; document.title = "beta-即時消息系統(tǒng)"; //窗口沒有消息的時候默認(rèn)的title內(nèi)容 } } document.addEventListener(visibilityChangeEvent, onVisibilityChange); //調(diào)用方式 if (!newMsgNotinceTimer) newMsgNotinceTimer = setInterval("newMsgCount()", 200);
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/79915.html
摘要:前言大家可以看看上一篇用構(gòu)建一個簡單的聊天室在上一篇文章中我們已經(jīng)實現(xiàn)了自我對話好友交流群聊離線消息等的功能。系統(tǒng)通知恭喜您連續(xù)登錄超過天,獎勵積分。 本文首發(fā)公眾號與個人博客:Java貓說 & 貓叔的博客 | MySelf,轉(zhuǎn)載請申明出處。 前言 大家可以看看上一篇:用Java構(gòu)建一個簡單的WebSocket聊天室 在上一篇文章中我們已經(jīng)實現(xiàn)了:自我對話、好友交流、群聊、離線消息等...
摘要:最重要的一點,還提供了聊天機器人接口。所以我們希望可以通過聊天機器人的開發(fā),把這些非技術(shù)人員需要查詢的需求集成進(jìn)去,然后智能解析他們發(fā)送的消息,并以友好方式自動答復(fù)數(shù)據(jù)結(jié)果。 Zulip是什么 Zulip是移動和桌面辦公聊天解決方案開發(fā)商 一個強大的群組聊天軟件 目前已被Dropbox收購并完全開源(github:https://github.com/zulip/zulip) 就Zul...
閱讀 2076·2023-04-25 19:03
閱讀 1221·2021-10-14 09:42
閱讀 3399·2021-09-22 15:16
閱讀 946·2021-09-10 10:51
閱讀 1545·2021-09-06 15:00
閱讀 2401·2019-08-30 15:55
閱讀 485·2019-08-29 16:22
閱讀 893·2019-08-26 13:49