Prüfen Sie, ob ein Intervall ausgeführt wird, und Umgekehrt

Also ich habe eine web-app mit basic-Authentifizierung.

Beim im angemeldet ist, wird ein Intervall festgelegt ist:

$("#login").click(function(e) { 
var interval = setInterval(function(){myFunction();}, 2000); });

Dann, wenn ich ausgeloggt, muss ich halt das Intervall:

$("#logout").click(function(e) { 
if(typeof interval !== 'undefined') clearInterval(interval); });

Aber es funktioniert nicht, ich denke, die Möglichkeit zu prüfen, ob ein Intervall vorhanden ist, ist falsch...ich kann das Intervall, damit es ausgeführt wird, wenn im angemeldet, aber ich muss Sie stop/löschen, es wenn ich auf mein Logout-button und es tut...

PS. im mit der Intervall-check "myFunction" automatisch alle 2 Sekunden, aber vielleicht gibt es eine andere Möglichkeit, dies zu erreichen ohne Intervall? thx

Intervall var nicht global und somit nicht verfügbar in der logout-Funktion. Wenn du global oder außerhalb der funcs und dann versuchen. Dann sollte es funktionieren.
Nehmen Sie es einfach heraus, da es nicht global. console.log() etwas damit, dass man weiß, dass es passiert.
demo hier jsfiddle.net/5he9oarw/3
Es gibt keine Erwähnung von JQuery in der Frage oder in den tags enthalten.

InformationsquelleAutor xnanitox | 2016-01-15

Schreibe einen Kommentar