单击时"暂时禁用"链接?

Kei*_*gan 3 jquery click hyperlink

我有一个链接,当点击,执行一些动画功能到一些div等,并且工作得很好.我的问题是当我多次点击按钮等时,动画看起来很奇怪.我希望如此,当我点击我的按钮时,按钮被"禁用",比如2秒.

我不认为我需要发布代码,但只是问你是否认为你需要它.

我的链接是这样的:

<a href="button">Click</a>
Run Code Online (Sandbox Code Playgroud)

jus*_*tkt 7

是的,你绝对可以做到这一点.

添加单击处理程序并preventDefault()在动画运行时使用,直到完成为止.有关preventDefault的更多信息,请参阅jQuery文档.您可以在第一次单击后使用标志或更改单击处理程序来完成此操作.这是一个带标志的例子.

var isAnimating = false;
$("#animationLink").click(function(e) {
    if(!isAnimating) {
        isAnimating = true;
        setTimeout("isAnimating = false", 2000); // set to false in 2 seconds
        // alternatively you could wait until your animation is done
        // call animation code
    } else {
        e.preventDefault();
    }
});
Run Code Online (Sandbox Code Playgroud)

return false; 从您的单击处理程序将具有与preventDefault相同的效果,并添加了防止事件冒泡DOM的操作.