最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

javascript實(shí)現(xiàn)獲取服務(wù)器時(shí)間

 更新時(shí)間:2015年05月19日 09:16:45   投稿:hebedich  
本文給大家總結(jié)了一下使用javascript來獲取服務(wù)器時(shí)間的幾種方法和思路,十分的簡(jiǎn)單明了,有需要的小伙伴可以參考下

JS是在客戶端運(yùn)行的腳本,而不是運(yùn)行在服務(wù)器上,通常來說,通過JS獲取時(shí)間的時(shí)候獲取到的時(shí)間是訪客本地電腦上的時(shí)間,為了讓網(wǎng)頁上的時(shí)間不因訪客電腦差異而不同,我們有必要直接JS獲取服務(wù)器時(shí)間。

下面是完整的js獲取服務(wù)器時(shí)間代碼,是使用javascript獲取服務(wù)器時(shí)間的完整實(shí)例,js動(dòng)態(tài)刷新服務(wù)器時(shí)間。

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>AJAX獲取服務(wù)器時(shí)間</title>
<script type="text/javascript">
    /*
     * ajax 函數(shù),處理 ajax 請(qǐng)求
     * @param function callback 回調(diào)函數(shù)
     * @因?yàn)橐头?wù)器交互,所以必須在服務(wù)器環(huán)境運(yùn)行,不能在硬盤上直接打開
    */
    function ajax(callback){
        if(typeof callback!='function') return;
        var ajaxObject;
        try{
            ajaxObject=new XMLHttpRequest();
        }catch(e){
            try{
                ajaxObject=new ActiveXObject('Microsoft.XMLHTTP');
            }catch(e){
            }
        }
        if(!ajaxObject) return;
        if(ajaxObject.overrideMimeType){
            ajaxObject.overrideMimeType('text/html');
        }
        //location.href可以換成其他url,但必須是同一個(gè)站點(diǎn)的鏈接,并且文件存在
        ajaxObject.open('get',location.href);
        ajaxObject.send(null);
        ajaxObject.onreadystatechange=function(){
            if(ajaxObject.readyState==4){
                if(ajaxObject.status==200){
                    callback(ajaxObject);
                }
            }
        };
    }
    /*
     * 獲取時(shí)間并動(dòng)態(tài)刷新
    */
    function getTime(){
        ajax(
            function(ao){
                //只需要AJAX一次,將服務(wù)器時(shí)間獲取后以毫米為單位保存到一個(gè)變量中
                _timestamp=Date.parse(ao.getResponseHeader('Date'));
                _timestamp=_timestamp.toString().match(/^\d$/)?_timestamp:new Date().getTime();
                //設(shè)置定時(shí)器每過一秒動(dòng)態(tài)刷新一次時(shí)間
                setInterval(
                    function(){
                        //這里可以自定義時(shí)間顯示格式
                        document.getElementById('_timer').innerHTML=new Date(_timestamp).toLocaleString();
                        _timestamp+=1000;
                    },
                    1000
                );
            }
        );
    }
    window.onload=getTime;
</script>
</head>
<body>
    <div id="_timer">正在獲取服務(wù)器時(shí)間……</div>
</body>
</html>

思路分析:

服務(wù)器端時(shí)間這個(gè)概念很模糊。因?yàn)榉?wù)器端畢竟可能不是由一臺(tái)機(jī)器組成的。最簡(jiǎn)單的情況,也分web服務(wù)器和db服務(wù)器。你說的究竟是哪一種

如果是web服務(wù)器。
那么直接在java或者.net那頭new Date()就ok了
不要在網(wǎng)頁中的<script>里面new Date,那個(gè)只是客戶端時(shí)間

如果是db服務(wù)器。
需要連接到數(shù)據(jù)庫,通過sql來取得。比如oracle的就是select sysdate from dual。

示例:

如果js要取得這樣的服務(wù)器端時(shí)間,方法有很多。思路大體差不多。
1.
<script type="text/javascript">
    var date = <%=date(剛才在服務(wù)器端取得的時(shí)間,內(nèi)容取得方法上面分析過了)%>
</script>

2.<script type="text/javascript" src=".../ScriptServlet"></script>
將Servlet的返回流中寫入一個(gè)js文件,使其當(dāng)中的var nowDate = 服務(wù)器端時(shí)間

3.ajax,這個(gè)就不說了,網(wǎng)上一大堆

以上所述就是本文的全部?jī)?nèi)容了,希望大家能夠喜歡。

相關(guān)文章

最新評(píng)論

兴业县| 木里| 三河市| 潞城市| 潞西市| 安福县| 呼图壁县| 泰顺县| 开阳县| 双鸭山市| 昌平区| 东阳市| 沁源县| 加查县| 谢通门县| 镇平县| 六枝特区| 吴江市| 五华县| 肇州县| 高邑县| 八宿县| 西乡县| 永宁县| 巴中市| 新昌县| 兖州市| 政和县| 深泽县| 荥经县| 铜陵市| 罗源县| 安新县| 体育| 洛宁县| 依安县| 乡宁县| 麦盖提县| 大竹县| 天津市| 济源市|