我只是试图在动画触发时禁用按钮被点击的能力。
请注意,在最终使用中,我使用的是由 jQuery 触发的 CSS 动画,所以我不能只检查是否为 .is(':animated')。
我的解决方案是在动画期间更改按钮上的活动类,但 jQuery 似乎并没有意识到我已经更改了它的事实。
测试用例:http: //jsfiddle.net/Ct2TZ/
HTML:
<a href="#" class="button active">Click Me</a>
jQuery:
var myFunction = function () {
$('.button').removeClass('active');
$('.result').append('clicked<br> ');
$('.result').animate({
width: '200px'
}, 2000, function() {
$('.result').css({width: '75px'});
$('.button').addClass('active');
});
}
// THIS SHOULD NOT WORK DURING ANIMATION
$('.active').on("click", function () {
myFunction();
});