я звоню ajax каждую секунду на странице ..
Здесь страница сервера возвращает случайно сгенерированное число , используя это число (, преобразованное в секунды ). Я запускаю другую функцию в ajax success . это работает
Моя проблема
предположим, случайное число = 5 означает функция триггера () , вызываемая через 5 секунд с использованием setTimeout , но повторный вызов ajax вызывает каждую 1 секунду, поэтому триггерная функция также вызывается много раз.
я хочу сделать ожидание вызова ajax до выполнения функции триггера . Это означает, что я хочу приостановить этот вызов ajax до 5 секунд после этого возобновления
Как я могу это сделать?
Моя кодировка
//this ajax is called every minute
$.ajax({
type: "POST",
url: 'serverpage',
data: ({pid:1}),
success: function(msg) {
var array = msg.split('/');
if(array[0]==1){
setTimeout(function() { trigger(msg); },array[1]+'000');
}
}
});
//and my trigger function
function trigger(value)
{
alert("i am triggered !");
}
ответ сервера может быть
1/2 или 1/5 или 1/10 или 1/1
здесь 1 / 3 (преобразуется в секунды)