jQuery变量错误

问题描述:

我想我在这里犯了一个错误,因为它可能不工作。也许有人可以帮我jQuery变量错误

这里是我的jQuery代码(我认为剩下的并不重要):

$(文件)。就绪(函数(){ VAR切换= 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;" 
     }); 
    } 
}); 

谢谢

编辑:发现我的错误

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

的“;” 是动画中的支架:)

+1

在'else'部分,没有'toggled = false;'所以它不能在2状态之间切换? – fuyushimoya

+0

@fuyushimoya忘记了..但它仍然不是动画回来.. –

+0

我认为应该有2'=='而不是3''==='验证,如果这些是相同的类型和价值,而' =='检查值 –

您需要的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

已添加。还是行不通 :/ –

您需要在else条件也成立toggled

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