Я показываю часы обратного отсчета по отношению к заданному времени окончания.
хотя он работает отлично, но я хочу знать, какие методы лучше всего применять.
ниже моя функция обратного отсчета.
var timerId;
var postData = {endDate : endDate, tz : tz};
var countdown = function()
{
$.ajax({
type : 'post',
async : false,
timeout : 1000,
url : './ajax_countdown.php',
data : $.param(postData),
dataType : 'json',
success : function (resp){
$('#currentTime').html(resp.remainingTime);
}
});
}
я хочу, чтобы функция (обратный отсчет )вызывалась автоматически через каждую 1 секунду , и если она не выполняется/не завершается в течение 1 секунды, отмените текущий ajax и запустите новый вызов ajax.
теперь я обнаружил, что существует 4 метода работы
window.setInterval(countdown, 1000);
setInterval(function() {countdown()}, 1000);
var countdown = function() {
$.ajax({ //ajax code });
timerId = setTimeout(countdown, 5000); // assign to a variable
}
function clockStart() {
if (timerId) return
countdown();
}
clockStart(); // calling this function
var countdown = function() {
$.ajax({ //ajax code });
timerId = setTimeout(countdown, 5000);
}
(function(){
if (timerId) return;
countdown();
})();
Подскажите пожалуйста
clearTimeOut()
или clearInterval()
?Ссылки