Ich habe zwei Timer mit zwei booleschen Variablen und zwei Funktionen. Der erste Timer wird durch einen Klick ausgelöst, der einen der booleschen Werte wahrnimmt; Sobald der Timer einige Bedingungen erreicht hat, ist dieser Timer ausgeschaltet und setzt den Booleschen Wert auf "false" und ein weiterer Timer wird ausgelöst, indem er den zweiten Booleschen Wert wahr stellt und den zweiten Timer aufruft.Funktionen von einander aufrufen und umgekehrt
Sobald der zweite Timer einige Bedingungen erreicht hat, ist der Timer ausgeschaltet und setzt den zweiten Boolean False und ich versuche den ersten Timer auszulösen, der den ersten Boolean True setzt und den ersten Timer aufruft, aber es funktioniert nicht.
Ich kann nicht die Funktion aufrufen, die unter dem funcion erklärt wird, wo ich den Anruf zu tun.
Mein Code in JavaScript ist:
var active=false;
var activeBreak=false;
...
function breakDown(){
if(activeBreak){
...
if(some conditions){
active=true;
activeBreak=false;
countDown();// **This call doesn't work.Black in jsbin**
}
}
}
function countDown(){
if(active){
...
if(someConditions){
active=false;
activeBreak=true;
breakDown();// *This call works. Blue in jsbin*
}
}
}
...
$("#circle").click(function(){
active=true;
countDown(); // *This call works*/
});
Könnten Sie [Geige] liefern (https://jsfiddle.net/)? – GMaiolo
Vielleicht kommt 'someConditions' nie vor? .. Gibt es eine js timeout Funktion? – dev8080
Ja, die Bedingungen treten auf. Ich benutze jsbin.com und der Aufruf von breakDown() von der Funktion countDown ist blau (aktiv), aber der Aufruf von countDown() von der Funktion breakDown ist schwarz (nicht aktiv) und das ist was passiert. – user1881983