Javascript setTimeOut срабатывает любым способом, когда я загружаю новый раздел с помощью AJAX. Я написал функцию javascript для проверки простоя страницы в течение 5 секунд, а затем скрыл заголовок и нижнюю навигацию моей страницы. В процессе загрузки страницы я щелкнул новую вкладку, чтобы загрузить новый контент. Что происходит, когда новый раздел загружается через jQuery, он запускает предыдущую функцию timeOut. Я застрял с этим.
Вот мой код ожидания и загрузки нового раздела
Состояние ожидания проверки кода в режиме ожидания:
function checkIdleHome() {
//check the idle if no event occured
if((navigator.userAgent.match(/iPhone/i)) || (navigator.userAgent.match(/iPod/i)) || (navigator.userAgent.match(/iPad/i))) {
var events = ['ontouchstart','ontouchend','ontouchmove'],
i = events.length,
timer,
delay = 5000,
logout = function () {
// do whatever it is you want to do
// after a period of inactivity
//alert('lazy boy');
//alert('i am fired');
if(document.getElementById('mainnav')) {
document.getElementById('mainnav').style.display='none';
}
if(document.getElementById('header')) {
document.getElementById('header').style.display='none';
}
},
reset = function () {
clearTimeout(timer);
timer = setTimeout(logout, delay);
//alert(timer);
};
while (i) {
i -= 1;
document.addEventListener(events[i], reset, false);
}
reset();
//end idle if ios found
}//end of detecting navigator
}//end of check idle home
/// Code for load new section
var previd='';
function switchVideo(source,id,frame) {
document.getElementById(id).className='';
document.getElementById(frame).src=source;
if(previd!='' && id!=previd) {
document.getElementById(previd).className='inactiveVideo';
}
previd=id;
}
Я хочу остановить событие тайм-аута, когда я загрузил новую вкладку с этой функцией