我有DOM节点和点击处理程序,我需要在动画时禁用动作。如何通过jQuery动画检查元素当前是否正在动画化?
$('div').on('click', '.item', function() {
if (/* this not animating */) {
animate($(this));
}
});
我是否需要在该元素上设置data('play')
,该元素在完成时会更清楚,或者有更好的方法。
答案 0 :(得分:6)
尝试使用以下内容:
$('div').on('click', '.item', function() {
$this = $(this); // cached so we don't wrap the same jquery object twice
if (!$this.is(':animated')) {
animate($this);
}
});
答案 1 :(得分:5)
使用
$(element).is(":animated");
答案 2 :(得分:1)
您可以使用:animated
选择器检查元素是否为动画。
if($(this).is(":animated")) { ... }
有关详细信息,请查看:http://api.jquery.com/animated-selector/