Откройте всплывающее окно и закройте его автоматически через несколько секунд, используя Javascript setTimeout/setInterval
Я создал функцию вызова ajax после успешного добавления addtocart.
Мне нужно открывать пользовательские всплывающие окна каждые 4 секунды после addtocart и закрывать его через 4 секунды.
Но также мне нужно очистить интервал после закрытия всплывающего окна.
В пользовательской функции ajax success содержится:
var id = setTimeout(timer, 5000);
function timer() {
alert(1);
$("#qty-popup").show();
setInterval(function () {
$("#qty-popup").hide();
}, 5000);
clearInterval(id);
}
Но это не работает. Как это сделать (очистить интервал)?
1 ответ
Вам нужно иметь немного onClose
событие для всплывающего окна:
var id = setTimeout(timer, 5000);
function timer() {
$("#qty-popup").toggle();
}
Для Аякса:
$.ajax({
url: 'url'
data: data,
success: function(){
clearInterval(id);
},
error: function(){
clearInterval(id);
}
});