我有一个关于jQuery的相对简单的问题(请原谅我是一个菜鸟)。我在div上使用了“fadeToggle”(单击)功能来显示另一个元素,但是如果用户单击div说100次,我如何阻止动画反复播放每次点击?
答案 0 :(得分:2)
您也可以在调用之前验证队列是否为空,
$("button").click(function() {
if (!$animatedElement.queue().length) {
$animatedElement.fadeToggle("slow", "linear");
}
});
答案 1 :(得分:1)
我已经看到了这个问题的变体,其中使用了is running?
种变量:
running = false;
$("button:first").click(function() {
if (!running) {
running = true;
$("p:first").fadeToggle("slow", "linear", function() { running = false; });
}
});
答案 2 :(得分:0)
您需要设置在第一次迭代中激活的某种指标,然后在该函数的开头检查它。这可以是变量,也可以在目标元素上添加和检查类名。
答案 3 :(得分:0)
最简单的方法是使用。(停止) 例如:
@Produces(MediaType.TEXT_PLAIN)
在这里阅读更多内容: http://www.learningjquery.com/2009/01/quick-tip-prevent-animation-queue-buildup