jquery實現jsp頁面報警

//針對提現列表和充值記錄的報警聲音
window.onload = function() {
    if(typeof(TIP)!=='undefined' && TIP){
        setInterval(function(){
        $.getJSON('xb/getVoice.do', function(tip){
            if(tip){
            // 只處理正確返回的數據
            //如果提現記錄或充值記錄有未處理報警
                if(tip.status || tip.flag) {
                    playVoice('/sound/cash.wav', 'cash-voice');
                    if(tip.flag){
                        //充值記錄報警處理
                            $.ajax({
                                cache : false,
                                type : "get",
                                url : "xb/addRechargeFlag.do",  
                                data : {"id":tip.rechargeId},
                                dataType : "json",
                                success : function(jsonData) { 
                                    if(jsonData.result && jsonData.flag === 5){
                                        return;
                                    }
                            },error:function(dt){}
                    });
                }
            }else{return;}
        }});
    }, 2000);
}};
// 播放聲音
function playVoice(src, domId){
    var $dom=$('#'+domId);
    //判斷是否是IE瀏覽器
    if(/msie/.test(navigator.userAgent.toLowerCase())){
        // IE用bgsound標籤處理聲音
        if($dom.length){
            $dom[0].src=src;
        }else{
            $('<bgsound>',{src:src, id:domId}).appendTo('body');
        }
    }else{
        // IE以外的其它瀏覽器用HTML5處理聲音
        if($dom.length){
            $dom[0].play();
        }else{
            $('<audio>',{src:src, id:domId}).appendTo('body')[0].play();
        }
    }
}

注意:

頁面自動執行js的兩種常用方法:

  • 整個頁面的document全部加載完成以後執行,包括圖片聲音等資源,這是一種最嚴謹的頁面加載完再執行方法的方法,缺點:如果圖片聲音等外部資源需要很長時間來加載的話,該方法執行得就比較慢了。
window.onload =function(){//jquery代碼 };
  • 僅只需要加載所有的DOM結構,在瀏覽器把所有的HTML放入DOM tree之前就執行方法,包括在加載外部圖片等資源之前。
$(document).ready(function(){//js代碼});
    該方法有簡寫形式:
$(function(){//js代碼});
  • jquery從1.9版本開始,移除了$.browser$.browser.version,取代的是$.support,所以判斷瀏覽器類型:
$.browser.mozilla = /firefox/.test(navigator.userAgent.toLowerCase());
$.browser.webkit = /webkit/.test(navigator.userAgent.toLowerCase());
$.browser.opera = /opera/.test(navigator.userAgent.toLowerCase());
$.browser.msie = /msie/.test(navigator.userAgent.toLowerCase());

等號後面返回的就是true/false,直接用來替換原來的$.browser.msie等即可。
參考資料鏈接:
http://blog.csdn.net/zdnlp/article/details/14231067/,
http://www.fwolf.com/blog/post/35.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章