jQuery动态var更改和动态if-else检查

jQuery动态var更改和动态if-else检查,jquery,variables,dynamic,if-statement,Jquery,Variables,Dynamic,If Statement,我想创建一个变量,在单击时更改它的值,然后我想使用if检查变量的值,并执行一系列动画。如果var的值不是,比如说projects我使用else来反转动画 var url = "work"; if (url == "home") { $("#homeBox").fadeIn(200) } $("#homeTab").click(function(){ var url = "home" }) 我将把它用于一个单页网站,这样var值基本上就是url 谢谢如果我了解您需要什么,这将解决问题: va

我想创建一个变量,在单击时更改它的值,然后我想使用if检查变量的值,并执行一系列动画。如果var的值不是,比如说projects我使用else来反转动画

var url = "work";

if (url == "home") {
$("#homeBox").fadeIn(200)
}

$("#homeTab").click(function(){
var url = "home"
})
我将把它用于一个单页网站,这样var值基本上就是url


谢谢

如果我了解您需要什么,这将解决问题:

var url = "work";

function animate(){
  if (url == "home") {
    $("#homeBox").fadeIn(200);
  }
}
animate();

$("#homeTab").click(function(){
  url = "home";  //I removed 'var', because it would create a local variable.
  animate(); //Perform the animation/deanimation
})

希望这有帮助。干杯

我想您应该将if检查放在click处理程序中。大概是这样的:

var url = "work";

$("#homeTab").click(function(){
   var url = "home";

   if (url == "home") {
      $("#homeBox").fadeIn(200);
   }
   else {
      $("#homeBox").fadeOut(200);
   }

});

另外,不要忘记每行末尾的分号

当我调查它时,我似乎有一个问题。更改var可以很好地工作,但是当我切换到新选项卡时,else语句不起作用。else语句在我的例子中非常重要,因为我想用“else”来淡出上一页。好吧,你所有的标签都必须有共同点——父容器或CSS类。您可以淡出所有选项卡,然后淡入相应的选项卡。