jQuery:使用延迟()和前置()
Posted
技术标签:
【中文标题】jQuery:使用延迟()和前置()【英文标题】:jQuery: using delay() and prepend() 【发布时间】:2010-07-14 06:40:17 【问题描述】:在下面的代码中,最后一行在我的方式中不起作用:
$('button.goal').click(function ()
$('div.scorer_away').animate(
width: 'hide',
opacy: 'hide'
, 'slow')
.delay(2500)
.animate(
width: 'show',
opacy: 'show'
, 'slow');
$('span.scorer_away').delay(3000).prepend('<img src="chofbauer.png" />');
我怎样才能让它工作,prepend() 函数在 3 秒后添加新图像(因为 2.5 秒后容器,其中 img 前置被隐藏)?
【问题讨论】:
【参考方案1】:.delay()
仅适用于 jQuery fx methods
。 .prepend()
不是其中之一。
你可以像这样解决它
$('span.scorer_away').delay(3000).show(1, function()
$(this).prepend('<img src="chofbauer.png" />');
);
实际上,您必须创建自己的 .queue() 以获得“干净”的解决方案。
完成该任务的另一种方法是使用 javascripts 本机 setTimeout()
。
setTimeout(function()
$('span.scorer_away').prepend('<img src="chofbauer.png" />');
, 3000);
【讨论】:
【参考方案2】:你可以试试setTimeout
:
function myfunc() $('span.scorer_away').prepend('<img...>') ;
setTimeout( myfunc, 3000 );
【讨论】:
以上是关于jQuery:使用延迟()和前置()的主要内容,如果未能解决你的问题,请参考以下文章
[ jquery 文档处理 prependTo(content) ] 此方法用于把所有匹配的元素前置到另一个指定的元素元素集合中