jquery $('#div')。show()。delay(5000).hide(); 不起作用
我试图显示一个div设置为display: none;
持续5秒钟
$('#div').show().delay(5000).hide();
但它不工作,它只是直接隐藏()
你们能帮助我吗?
像这样做:
$('#div').show(0).delay(5000).hide(0);
通过将数字传递给.show()
和.show()
,jQuery将把这些方法放入其内部fx队列 (即使数字为零)。 由于.delay()
只能在一个队列中工作,所以你需要一点小小的解决方法。
例如: http : //jsfiddle.net/zceKN/
您需要使用.queue()
因为.queue()
默认没有排队。
$("#div").show().delay(5000).queue(function (next) { $(this).hide(); next(); });
你需要持续一段时间才能工作:
$('#div').show('slow').delay(5000).hide('slow');
例如: http : //jsfiddle.net/Paulpro/GLTaB/
$('#div').show(); setTimeout(function(){$('#div').hide();}, 5000);
.delay()仅适用于animation