我有以下代码:
$("#parahide").on("click", function () {
$(this).dequeue().slideUp('400');
}).delay(6000).slideUp('400');
这里click()和delay()都使用slideup()隐藏div。如果用户已经在6秒内点击了段落,我怎样才能阻止延迟()触发后的第二次slideup()。
答案 0 :(得分:0)
您可以使用.stop(true)
清除动画队列,该队列将清除所有待处理的动画操作,包括延迟和幻灯片。
$("#parahide").on("click", function () {
$(this).stop(true).slideUp('400');
}).delay(6000).slideUp('400');
我不太清楚为什么这是一个问题,因为在已经隐藏的内容上调用.slideUp()
可能不会做任何可见的事情。