2016-05-16 6 views
-1

Ich denke, ich habe hier einen Fehler gemacht, weil es wahrscheinlich nicht funktioniert. Vielleicht kann mir jemandjQuery Variablen Fehler

helfen Hier ist meine jQuery-Code (ich glaube, der Rest ist nicht wichtig):

$ (document) .ready (function() { var getoggelt = false;

$(".arrow").click(function() { 
    if (toggled === false) { 
     $(".nav").animate({ 
      left: "0px" 
     }); 
     $(".arrow").animate({ 
      left: "280px" 
     }); 
     toggled = true; 
    } else { 
     $(".nav").animate({ 
      left: "-280px;" 
     }); 
     $(".arrow").animate({ 
      left: "0px;" 
     }); 
    } 
}); 

Danke

EDIT: gefunden mein Fehler

$(".nav").animate({ 
      left: "-280px;" 
     }); 

Die ";" Ist sehr falsch in der Animation Klammer :)

+1

In 'else' Teil, no' toggled = false; 'also wird es nicht möglich sein, zwischen 2 Zustand zu wechseln? – fuyushimoya

+0

@fuyushimoya vergaß das .. Aber es ist immer noch nicht animieren zurück .. –

+0

Ich denke, es sollte 2 '==' statt 3 sein. '===' überprüft, ob diese vom gleichen Typ und Wert sind, während ' == 'überprüft den Wert –

Antwort

1

Sie benötigen eine weitere Schließung Zahnspange für document.ready:

$(document).ready(function() { 
    var toggled = false; 
    $(".arrow").click(function() { 
     if (toggled === false) { 
      $(".nav").animate({ 
       left: "0px" 
      }); 
      $(".arrow").animate({ 
       left: "280px" 
      }); 
      toggled = true; 
     } else { 
      $(".nav").animate({ 
       left: "-280px;" 
      }); 
      $(".arrow").animate({ 
       left: "0px;" 
      }); 
     } 
    }); 
}); // you missed this 
+0

Hinzugefügt. Funktioniert immer noch nicht :/ –

0

Sie müssen auch toggled im else Zustand auf:

var toggled = false; 

$(".arrow").click(function() { 
    if (toggled === false) { 
     $(".nav").animate({ 
      left: "0px" 
     }); 
     $(".arrow").animate({ 
      left: "280px" 
     }); 
     toggled = true; 
    } else { 
     $(".nav").animate({ 
      left: "-280px;" 
     }); 
     $(".arrow").animate({ 
      left: "0px;" 
     }); 
     toggled = false; 
    } 
});