11525 sujets
JavaScript, DOM et API Web HTML5
Merci Jencal pour la réponse.
Mais je crains qu'un settimeout global lance le rechargement même si quelqu'un est en train d'utiliser la borne.
Ma préoccupation c'est que les utilisateurs d'une borne retournent rarement à l'accueil avant d'aller faire autre chose. Je souhaite donc que si l'ordi n'est pas utilisé (souris, clavier, écran tactile) depuis 5 min alors il déclenche le rechargement de la page d'accueil.
Mais je crains qu'un settimeout global lance le rechargement même si quelqu'un est en train d'utiliser la borne.
Ma préoccupation c'est que les utilisateurs d'une borne retournent rarement à l'accueil avant d'aller faire autre chose. Je souhaite donc que si l'ordi n'est pas utilisé (souris, clavier, écran tactile) depuis 5 min alors il déclenche le rechargement de la page d'accueil.
Bah tout dépend. pour ce genre de cas tu peux faire un reset time sur les actions tels que mousemove/click/keydown.. sur tout les body de chaque page
exemple :
Modifié par JENCAL (22 Jul 2022 - 15:19)
exemple :
attachEvent(window,'load',function(){
var idleSeconds = 30;
var idleTimer;
function resetTimer(){
clearTimeout(idleTimer);
idleTimer = setTimeout(whenUserIdle,idleSeconds*1000);
}
attachEvent(document.body,'mousemove',resetTimer);
attachEvent(document.body,'keydown',resetTimer);
attachEvent(document.body,'click',resetTimer);
resetTimer(); // Start the timer when the page loads
});
function whenUserIdle(){
//...
}
function attachEvent(obj,evt,fnc,useCapture){
if (obj.addEventListener){
obj.addEventListener(evt,fnc,!!useCapture);
return true;
} else if (obj.attachEvent){
return obj.attachEvent("on"+evt,fnc);
}
}
Modifié par JENCAL (22 Jul 2022 - 15:19)