添加/删除类和动画

时间:2015-06-30 09:57:47

标签: jquery class jquery-animate add

我会用按钮为div设置动画。 =>点击。移动div顶部。再次单击移动div底部。如果我点击irt移动到顶部。但如果我再次点击它什么都不做。

http://www.kcserver.info/starkk/starkk.at/

点击电视按钮

这是我的剧本:



$(document).ready(function(){
    $("button").click(function(){
        $("#overlay-tv").animate({top: '0px'}, 4000, 'linear');
        $(this).delay(200).addClass('tv-aktiv');
    });
    $("button.tv-aktiv").click(function(){
        $("#overlay-tv").animate({top: '20px'}, 4000, 'linear');
        $(this).delay(200).removeClass('tv-aktiv');
    });
});




1 个答案:

答案 0 :(得分:0)

您只在按钮上注册了一次点击事件。 ' button.tv-活跃'当$(document).ready()触发时不存在,因此jQuery将找不到它并追加新的click事件。

试试这个:

<script>
  $(document).ready(function(){
      $("button").click(function(){
          if($(this).hasClass('tv-aktiv') {
            $("#overlay-tv").animate({top: '20px'}, 4000, 'linear');
            $(this).delay(200).removeClass('tv-aktiv');
          } else {
            $("#overlay-tv").animate({top: '0px'}, 4000, 'linear');
            $(this).delay(200).addClass('tv-aktiv');
          } 
      });
  });
</script>