Frage

Ich habe den folgenden Code:

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

, die grundsätzlich rufen blah nach 15 Minuten auf der Seite geladen haben.

Wenn jedoch irgendwann ich ein alert () oder eine confirm (), dann, sobald sie entlassen wird, blah () aus irgendeinem Grund ausgeführt wird.

Was ich gesehen habe, geschieht dies nur in Safari / Chrome. Es geschieht nicht in IE / Firefox.

Alle Ideen, was los ist, oder noch besser, wie diese zu lösen?

Danke!
Daniel

War es hilfreich?

Lösung

Du bist nicht allein, das ist der Fehler: code.google. com / p / Chrom / issues / Detail? id = 43796

Andere Tipps

hat dieses Problem nicht durch das Chrom-Team gelöst.

Ich fand, dass durch eine gewisse Verzögerung zwischen der Einführung und dem clear SetTimeout, wird das Problem lösen.

// 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);
}

hoffe, es hilft.

Sind Sie sicher, dass die Ursache, ich diese Demo lief und es nicht replizieren kann.

"Timeout" erscheint nach 10 Sekunden, klicken Sie in dem Feld vor der Hand Test.

http://jsfiddle.net/PFgaJ/

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top