在java web認證系統開發中,客戶要求有數據更新時要在頁面彈出提示框,這樣方便在旁邊的工作人員可以及時的知道有新數據提交了,我們除了使用及時的推送技術外還可以使用ajax來實現這些功能。
代碼實現的原理,在頁面啟用定時執行ajax請求,如果獲得數據是最新狀態的,要執行語音提示和彈出框提示,這樣實現的弊端是頻繁的調用數據庫,該方法只適合於使用人數較少的系統。
1、加入語音提示
<audio id="sound" autoplay="autoplay">
動態加入播放語音文件代碼:
document.getElementById("sound").src="<%=basePath%>admin/media/global.wav";
2、動態彈出消息提示框:
在此處我導入了jquery.gritter.js和jquery.gritter.css,具體實現代碼:
jQuery(document).ready(function() { setInterval(function(){ $.post('ajax/linecheck',function(data){ var json=eval("("+data+")"); $.each(json,function(index,item){ $("#line"+item.id).html("") $.each(item.localList,function(index,item2){ if(item2.attendOCList!=""){ $("#line"+item.id).append("<li class='in' id='in"+item2.id+"'><div class='avatar'>" +item2.location+"</div><div class='message'><ul id=li"+item2.id+"></ul></div></li>") } $.each(item2.attendOCList,function(index,item3){ if(item3.status==0){ $("#li"+item2.id).append("<li class='user'><span class='username'>"+item3.person_name +"</span><br><span style='color:red;' class='username'>時間: " + item3.today+" "+item3.times +"</span><br><span class='username'>電話:" +item3.person_phone+"</span><br><span class='username'>身份證:" +item3.card_id+"</span></li><hr>"); }else{ $("#li"+item2.id).append("<li class='user'><span class='username'>" +item3.person_name+"</span><br><span style='color:red;' class='username'>時間: " + item3.today+" "+item3.times +"</span><br><span class='username'>電話:" +item3.person_phone+"</span><br><span class='username'>身份證:" +item3.card_id+"</span></li><hr>"); document.getElementById("sound").src="<%=basePath%>admin/media/global.wav"; setTimeout(function () { var unique_id = $.gritter.add({ title: item3.person_name+"("+item2.location+")", text:"<span class='username'>"+item3.person_name +"</span><br><span style='color:red;' class='username'>時間: " + item3.today+" "+item3.times +"</span><br><span class='username'>電話:" +item3.person_phone+"</span><br><span class='username'>身份證:"+item3.card_id+"</span>", sticky: true, time: '', class_name: 'my-sticky-class' }); setTimeout(function () { $.gritter.remove(unique_id, { fade: true, speed: 'slow' }); }, 12000); }, 2000); } }); }); }); }); },2000); });
以上內容是小編給大家介紹的JS實時彈出新消息提示框並有提示音響起的實現代碼,希望對大家有所幫助!