如何防止垃圾邮件点击触发事件?

How to prevent spam clicking from firing off events?

我在看下面的代码笔,我想知道如何阻止垃圾点击,例如,如果您一次点击很多次,动画就会开始混乱。

我怎样才能防止这种情况发生?只是有条件的工作吗?我试过了,但我无法让它工作。 if isAnimating = true

如何让动画继续播放并阻止用户交互,直到它结束。

http://codepen.io/Filippo/pen/WvGbJB/?editors=011

如果你不想知道动画是由 CSS 或 JS 播放的事实,只有一个解决方案。你必须知道你的动画有多长,并使用setTimeout。例如:

var isAnimating = false;
$('#button').click(function() {
    if (isAnimating) {
        return;
    }

    isAnimating = true;

    // Start animation. Add a css class or do this by javascript or whatever

    // Assuming the animation duration is 2 seconds
    setTimeout(function() {
        isAnimating = false;
    }, 2000);
});