Domanda

Ho il seguente codice:

t = setTimeout(function () { blah();  }, 900000);

Il che, in sostanza, chiede bla dopo 15 minuti di pagina aver caricato.

Tuttavia, se ad un certo punto mi mostra un avviso () o una conferma (), quindi non appena è respinto, blah () viene eseguito per qualche motivo.

Per quanto ho visto, questo accade solo in Safari / Chrome. Non succede in IE / Firefox.

Tutte le idee che cosa sta succedendo, o meglio ancora, come risolvere questo?

Grazie!
Daniel

È stato utile?

Soluzione

Altri suggerimenti

Questo problema non è stato risolto dal team di cromo.

ho scoperto che, con l'introduzione di un certo ritardo tra clearTimeout e la setTimeout, risolverà il problema.

// mouse event
document.onmousemove = function(){
  clearTimeout(timeout);
  debug("Idle Timer reinitialized"); // apparently this function introduces some delay. it just works. You may want to include another timer here like for 2-3 seconds.
  timeout = setTimeout(logoutNow, systemTimeout);
}

Spero che aiuta.

Sei sicuro che sia la causa, mi sono imbattuto questa demo e non può replicare.

"Timeout!" appare dopo 10 secondi, fare clic nella casella prima mano per prova.

http://jsfiddle.net/PFgaJ/

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top