Для некоторых продуктов есть сайт ставок и таймер обратного отсчета, который должен рассчитывать оставшееся время относительно серверного времени.
Ниже приведен jQuery для обратного отсчета и обратите внимание на атрибут serverSync, который вызывает функцию ajax с именем serverTime () для получения времени сервера.
//Countdown Jquery
$(".anything").countdown("change", {
until: $.countdown.UTCDate(0, year, month, day, hours, minutes, seconds, 0),
format:"dHMS",
serverSync: serverTime
});
//The ajax function that is being called by the countdown script
function serverTime() {
var time = null;
$.ajax({
url: "serverTime.php",
async: false,
dataType: "text",
success: function(text) {
time = new Date(text);
}, error: function(http, message, exc) {
time = new Date();
}
});
return time;
}
При открытии страницы с обратным отсчетом с разных ПК обратный отсчет перестает работать как положено. Когда я удаляю async: false
из функции AJAX serverTime()
, обратный отсчет работает нормально, но показывает разные таймеры на разных ПК, так как это займет время ПК, а не время СЕРВЕРА.
Мне нужно решение для этого.