Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在jquery中重复单击动画_Javascript_Jquery - Fatal编程技术网

Javascript 在jquery中重复单击动画

Javascript 在jquery中重复单击动画,javascript,jquery,Javascript,Jquery,我正在使用jquery在单击带有动画的状态时显示文本。问题是动画效果仅在第一次单击状态时运行,而不是在第二次单击状态时运行。代码如下: $("#maharashtra").live("click",function(){ $("#mainbg").hide(); $("#divmaha").animate({left:"700px"}); $("#divmaha").show() ; $("#divguj").hide(); $("#divgoa").h

我正在使用jquery在单击带有动画的状态时显示文本。问题是动画效果仅在第一次单击状态时运行,而不是在第二次单击状态时运行。代码如下:

$("#maharashtra").live("click",function(){

    $("#mainbg").hide();
    $("#divmaha").animate({left:"700px"});
    $("#divmaha").show() ;
    $("#divguj").hide();
    $("#divgoa").hide();
    $("#divkerala").hide();
    $("#divassam").hide();
    $("#divmeghalaya").hide();
    $("#divarunachal").hide();

    $("#divmizoram").hide();
    $("#divkarnataka").hide();
    $("#divandhra").hide();
    $("#divtamilnadu").hide();
    $("#divraj").hide();
    $("#divjammu").hide();
    $("#divuttaranchal").hide();
    $("#divhp").hide();
    $("#divharyana").hide();
    $("#divpunjab").hide();
    $("#divdelhi").hide();
    $("#divmadhya").hide();
    $("#divjharkhand").hide();
    $("#divchattisgarh").hide();
    $("#divup").hide();
    $("#divorissa").hide();
    $("#divbihar").hide();
    $("#divwestbengal").hide();
    $("#divsikkim").hide();
    $("#divtripura").hide();
    $("#divnagaland").hide();

});

这是因为已经执行了动画。现在,引入一个“重置”按钮,并添加动画中所有内容的反转,使其移回原始位置。现在,无论何时有人点击动画按钮,它都会动画

顺便说一句,你可以压缩这段代码。组合选择器并用逗号分隔。

试着打开它

$("#maharashtra").on("click",function(){ });
由于您没有提供完整的代码,我有另一个猜测,您可能没有重置动画。
在藏了所有的东西之后。。在第二次单击之前是否显示所有剂量隐藏的内容?

,因为第一次单击时会执行动画。试试这个。你会知道问题出在哪里

     $("#maharashtra").live("click",function(){
       reset();
 $("#mainbg").hide();
 $("#divmaha").animate({left:"+=700px"});
 $("#divmaha").show() ;


});
 function reset ()
  {
             //reset your element to original position here and then you dont need write +=700px you can simply write left:"700px" 
   }
现在,如果您愿意,您的元素将在每次单击时向左动画700px。
fiddle:

这伤了我的眼睛,要么链接你的选择器,要么给你必须隐藏的所有元素添加一个公共类,你能创建一个fiddle吗?天哪,你不能使用公共类吗???!这不会有什么区别,可能是因为您没有重置动画。