我有点击事件(见下文)。我遇到的问题是我触发它但targ.hide('slow')事件是异步的,所以我能够在第一个targ.hide('slow')仍在运行时再次触发事件。我已设法用旗帜解决问题但是想知道是否有更好的方法来阻止它?提前谢谢。
var flag = false;
$('div.titlebar div.re.b1 div.r .sides').delegate('.close', 'click', function (e)
{
if (!flag)
{
flag = true;
var cnt = $('table.sides tbody tr > td').length;
var targ = $(this).closest('td');
var side = $(this).parent('div[itemprop]').attr('itemprop');
if (cnt > 1)
{
targ.hide('slow', function () { targ.remove(); LoadSides(dkey); flag = false; });
updatesidedel(side, true);
}
}
e.stopPropagation();
});
答案 0 :(得分:4)
您可以使用:animated
检查td
是否仍在设置动画。
if( $('td:animated').length > 0 )
答案 1 :(得分:1)
您应尝试使用此jquery's :selector来查看您的商品目前是否已设为动画。