2013-06-21 218 views
6

我想在jquery中执行2个函数,但我需要第三个函数在3秒后或多或少执行,我试试这个,但如果使用这个,jquery的第二个函数永远不会执行最后,我把脚本我创建和我尝试的作品继续:jquery延迟功能执行

jQuery("#tem_forma").hide(); 
    delay(3000); 
    jQuery("#win").hide(1000); 

如何使用延时功能等待3秒,执行下一个功能,在这种情况下,第二

Thank's,问候!

回答

13

使用的setTimeout

jQuery("#tem_forma").hide(); 
setTimeout(function() { jQuery("#win").hide(1000); }, 3000); 

这将确保您的功能得到在3秒后执行。

+0

非常好的功能,适合我的情况下工作,谢谢 ! – user2501504

+0

欢迎:) –

0

这是你的意思吗?

jQuery("#tem_forma").hide(); 
jQuery("#win").delay(3000).hide(1000); 
+0

'延迟'只适用于排队的jQuery效果,'hide'不是其中之一。 –

+0

@ Sushanth-- - 只有在'hide'没有参数时才工作 – Shaddow

+0

那是因为你是传递持续时间属性..它不起作用没有任何参数 –

1

您可以使用.delay()这样的:

jQuery("#tem_forma").hide(); 
jQuery("#win").delay(3000).hide(1000); 

但要知道,.hide()需要有(时间)参数连同.delay()

+0

'延迟'只适用于排队的jQuery效果,'隐藏'不是其中之一。 –

+1

@ Sushanth-- - 仅当'hide'没有参数时才工作 – Shaddow

+0

'hide'和'show'带有传入持续时间属性的行为就像效果一样。所以它会在这种情况下起作用。但是,如果该参数被省略,则不会 –