首頁 >web前端 >js教程 >網頁即時顯示伺服器時間和javscript自運行時脈_javascript技巧

網頁即時顯示伺服器時間和javscript自運行時脈_javascript技巧

WBOY
WBOY原創
2016-05-16 16:45:121742瀏覽

In letzter Zeit muss die Serverzeit auf der Projektwebseite in Echtzeit angezeigt werden. Wenn die Serverzeit jede Sekunde über Ajax geladen wird, wird eine große Anzahl von Anforderungen generiert.

Deshalb haben wir eine Kombination aus „Javascript Self-Running Clock“ und „Ajax Loading Server Time“ entwickelt, um die Serverzeit anzuzeigen. Die „selbstlaufende Javascript-Uhr“ läuft automatisch ab einer bestimmten Anfangszeit als Startpunkt, und die „Ajax-Ladeserverzeit“ aktualisiert die Serverzeit alle 60 Sekunden auf die „selbstlaufende Javascript-Uhr“.

selbstlaufende Javascript-Uhr:

Code kopieren Der Code lautet wie folgt:

/ *!
* Datei: sc_clock.js
* Version: 1.0.0
* Autor: LuLihong
* Datum: 2014-06-06
* Beschreibung: Wird automatisch ausgeführt Uhr
*
* Urheberrecht: Open Source, verwenden Sie es nach Belieben, bitte halten Sie den Kopf gesenkt.
*/

/**
* Formatierte Ausgabe
* @returns
*/
String.prototype.format = function() {
var args = arguments
return this.replace(/{ (d )}/g, function(m, i){return args[i];});

/**
* In Zahl umwandeln
* @returns
*/
String.prototype.toInt = function(defaultV) {
if (this === "" || !(/^d $/.test(this))) return defaultV;

window.scClock =
{
Jahr: 2014,
Monat: 1,
Tag: 1,
Stunde: 0,
Minute: 0,
second : 0,

isRunning : false,
/**
* Eine Funktion, die die vom Aufrufer beim Aufruf der Startfunktion übergebene Zeit anzeigt.
*/
showFunc : function(){},

/**
* Initialisierung
*/
init : function(y, mon, d, h, min, s){
this.year = y;
this.month = mon;
this.day = d; 🎜>this.hour = h;
this.minute = min;
this.second = s;

/**
* Initialisierungszeit: Zeitformat: 09.06.2014 11:30:30
*/
updateTime : function(time) {
var arr = time.split(/[- :]/
if (arr.length != 6) return; ].toInt(2014);
this.month = arr[1].toInt(1);
this.day = arr[2].toInt(1); 3].toInt(0);
this.minute = arr[4].toInt(0);
this.second = arr[5].toInt(0);
/**
* Aktualisierungszeit: Zeitformat: 09.06.2014 11:30:30
*/
updateTime : function(time) {
var arr = time.split(/[- :]/);
if (arr.length != 6 ) return;

this.year = arr[0].toInt(2014)
this.month = arr[1].toInt(1); ].toInt(1);
this.hour = arr[3].toInt(0);
this.minute = arr[4].toInt(0); 5].toInt(0);
},

/**
* Starten Sie
*/
startup : function(func) {
if (this.isRunning) return; >this.isRunning = true;
this.showFunc = func;
window.setTimeout("scClock.addOneSec()", 1000);

/**
* Ende
*/
shutdown : function() {
if (!this.isRunning) return;
this.isRunning = false
},

/**
* Nehmen Sie sich Zeit
*/
getDateTime : function() {
var fmtString = "{0}-{1}-{2} {3}:{4}:{5}";
var sMonth = (this .month < 10) ? ("0" this.month) : this.month; var sDay = (this.day < 10) : this.day; >var sHour = (this.hour < 10) ? ("0" this.hour) : this.hour
var sMinute = (this.minute < 10) : this.minute;
var sSecond = (this.second < 10) ? ("0" this.second) : this.second
return fmtString.format(this.year, sMonth, sHour, sMinute, sSecond);
},

/**
* Eine Sekunde hinzufügen
*/
addOneSec : function() {
this.second; = 60) {
this.minute = 0;
this.minute ;
if (this.minute >= 60) {
this.minute = 0; this.hour ;
}
if (this.hour >= 24) {
this.hour = 0;
this.day ;
switch(this.month ) {
Fall 1:
Fall 3:
Fall 5:
Fall 7:
Fall 8:
Fall 10:
Fall 12: {
if ( this.day > 31) {
this.day = 1;
this.month ;
break; 🎜>Fall 9:
Fall 11: {
if (this.day > 30) {
this.day = 1;
}
break;
}
Fall 2: {
if (this.isLeapYear()) {
if (this.day > 29) {
this.day = 1; Monat ;
}
} else if (this.day > 28) {
this.day = 1;
this.month ;
}
if (this.month > 12) {
this.month = 1;
this.year ;

this.showFunc(this.getDateTime ());

if (this.isRunning)
window.setTimeout("scClock.addOneSec()", 1000); >*/
isLeapYear : function() {
if (this.year % 4 == 0) {
if (this.year % 100 != 0) return true; .year % 400 == 400) return true;
return false;

};
呼叫程式碼:
複製程式碼 程式碼如下:

/**
* 開始系統時間
/**
* 載入系統時間
*/
function startupClock() {
if (window.scClock) {
window.scClock.startup(function(time){
$("#currTime").text(time);
});
}
}
/***/
function loadSystemTime() {
var jsonData = {
"ajaxflag": 1,
"mod": "time_mod"
};
$.getJSON(ajax_sc_url, jsonData, function(data){
if (data.code==0) {
if (window. scClock)
window.scClock.updateTime(data.time);
}
});
setTimeout("loadSystemTime()", 60000);
}

html顯示代碼:
複製程式碼 程式碼如下:


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn