سلام
همونطور که جناب فتح اللهی فرمودند، بهتر هست که یک بار زمان را از سرور دریافت کنید و سپس بروزرسانی را بوسیله جاوا اسکریپت انجام دهید.
بنده در ارتباط با این بحث، یک کلاس ساده نوشتم که میتونه عملیات بروزرسانی را انجام بده.
روش کار به این صورت هست که شما یک بار متد Init را به همراه پارامترهای (ساعت، دقیقه، ثانیه، آیدی تگ) فراخوانی میکنید، در نهایت برای اجرای ساعت، یک بار هم متد Run را فراخوانی میکنید.
مثال :
امیدوارم مفید بوده باشه .
همونطور که جناب فتح اللهی فرمودند، بهتر هست که یک بار زمان را از سرور دریافت کنید و سپس بروزرسانی را بوسیله جاوا اسکریپت انجام دهید.
بنده در ارتباط با این بحث، یک کلاس ساده نوشتم که میتونه عملیات بروزرسانی را انجام بده.
var MyTime = function () { var date; var tag; var init = function (hour, minute, seconds, tagId) { var constructor = getConstructorString(hour, minute, seconds); date = new Date(constructor); tag = document.getElementById(tagId); //console.log('MyTime : Init(%s, %s, %s, %s)', hour, minute, seconds, tagId); }; var run = function () { update(); window.setInterval(update, 1000); //console.log('MyTime : Run'); }; var update = function updateClock() { var h = date.getHours(); var m = date.getMinutes(); var s = date.getSeconds(); s++; if (s == 60) { m++; s = 0; }; if (m == 60) { h++; m = 0; }; if (h == 13) h = 1; var constructor = getConstructorString(h, m, s); date = new Date(constructor); h = (h < 10) ? ("0" + h) : h; m = (m < 10) ? ("0" + m) : m; s = (s < 10) ? ("0" + s) : s; tag.innerHTML = h + ":" + m + ":" + s; //console.log('MyTime : update'); }; var getConstructorString = function (hour, minute, seconds) { //console.log('MyTime : getConstructorString'); return '01/01/2000 ' + hour + ':' + minute + ':' + seconds; }; return { Init: init, Run: run }; }
روش کار به این صورت هست که شما یک بار متد Init را به همراه پارامترهای (ساعت، دقیقه، ثانیه، آیدی تگ) فراخوانی میکنید، در نهایت برای اجرای ساعت، یک بار هم متد Run را فراخوانی میکنید.
مثال :
myTime = new MyTime(); myTime.Init(12, 59, 50, 'clock'); myTime.Run();
امیدوارم مفید بوده باشه .