为什么我的动画卡在循环中?

时间:2017-01-10 15:00:40

标签: javascript jquery css css3

我看到我的CSS动画有一些奇怪的行为,并希望有人可以提供帮助。我基本上使用选择框来选择应显示哪个<ul>。但是,如果用户选择值A,选择值B,然后再次选择A,动画将被抛入A和B之间的无限循环淡入淡出。

$('select#month').change(function(){
    var s = $('option:selected', this).val();

    $('#plan-wrapper ul.visible').addClass('scaleFadeOut').on('animationend', function(){
      $(this).removeClass('scaleFadeOut visible').addClass('hidden');

      $('#plan-wrapper ul#' + s).removeClass('hidden').addClass('scaleFadeIn').on('animationend', function(){
        $(this).removeClass('scaleFadeIn').addClass('visible');
      });

    });
  });

我目前在任何地方都没有这个,但我很快就会建立一个临时站点。如果需要,我会用链接更新这篇文章。

编辑:正如所承诺的,这是一个临时站点链接:https://lbc.labs.nichols-co.com/vision

我现在可以停止投票吗?

1 个答案:

答案 0 :(得分:0)

非常感谢/ u / SirHound对reddit的看法。他指出我需要调用off()来删除事件监听器。 Here is a link to his answer.