我有一个链接,当单击该链接时,会对某些 div 等执行一些动画功能,并且效果非常好。我的问题是当我多次单击按钮等时,动画看起来很奇怪。我希望当我的按钮被单击时,该按钮会“禁用”2 秒钟。
我认为我不需要发布代码,只是询问您是否认为需要它。
我的链接是这样的:
<a href="button">Click</a>
最佳答案
是的,你绝对可以做到。
您添加一个点击处理程序,并在动画运行直至完成时使用 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();
}
});
来自点击处理程序的 return false;
将具有与 PreventDefault 相同的效果,并添加防止事件在 DOM 中冒泡的操作。
关于jquery - "Disable"单击时暂时出现链接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5380722/