我试图让一个元素在动画时不可点击。动画完成后,我希望它再次可点击。我已经搜索了很长时间以寻求有关如何实现此目的的帮助,但是我无法使其正常工作,也不知道为什么。
的HTML:
<p>
<span class="red" id="a">A</span><span id="llright" class="hide">llright</span> B C D
</p>
单击字母 A 时,它会向左移动,然后一些文本会在它旁边淡入。
jQuery:
(function() {
var letterA = $('#a'),
llright = $('#llright');
$('#a:not(.open)').live('click', function() {
letterA.animate({
marginRight: "5.7in",
}, 1300, function() {
letterA.addClass('open');
llright.fadeIn(1300); // Animation complete.
});
});
$('#a.open').live('click', function() {
llright.fadeOut(700);
letterA.delay(700).animate({
marginRight: "0.0in",
}, 700, function() {
letterA.removeClass('open');
});
});
})();
动画效果很好,但这不是:
if(letterA.is(':animated')) {
letterA.unbind('click');
};
最后一部分根本不起作用,即使我插入一个简单的 alert() 而不是 unbind() 它似乎也无法确定 A 何时移动而不是移动。
我真的可以在这里使用一些帮助,我已经尝试了我能想到的一切。
谢谢/奥斯卡