延迟后运行function
我有下面的全球jQueryfunction存储,但在页面加载,我想执行它1000后延迟。 我的语法有什么问题吗? 我知道延迟总是在function之前。 它没有回应。
全球function:
function showpanel() { $(".navigation").hide(); $(".page").children(".panel").fadeIn(1000); ;}
执行function:
parallax.about.onload=function(){ $('#about').delay(3000).showpanel(); };
$(document).ready(function() { // place this within dom ready function function showpanel() { $(".navigation").hide(); $(".page").children(".panel").fadeIn(1000); } // use setTimeout() to execute setTimeout(showpanel, 1000) });
更多详情请看这里
我search,发现在下面的URL解决scheme更好 。
http://www.tutorialrepublic.com/faq/call-a-function-after-some-time-in-jquery.php
值得一试。
它将给定的函数添加到要在当前匹配的元素上执行的函数队列中。
$(this).delay(1000).queue(function() { // your Code | Function here $(this).dequeue(); });
然后对队列中的下一个函数执行当前再次匹配的元素。
你可以在jQuery中添加超时function(3秒后显示提醒):
$(document).ready(function($) { setTimeout(function() { alert("Hello"); }, 3000); });
这个答案只是用来了解如何使用JQuery delay
函数来delay
。
想象一下,你有一个警报,你想设置警报文本,然后显示警报,并在几秒钟后隐藏它。
这是简单的解决scheme:
$(".alert-element").html("I'm the alert text").fadeIn(500).delay(5000).fadeOut(1000);
这是完全简单的:
-
.html()
将改变.alert-element
的文本 -
.fadeIn(500)
将在500毫秒后淡入 - 在调用下一个函数之前,JQuery
delay(5000)
函数将使延迟5000毫秒 - 语句结尾处的
.fadeOut(1000)
将淡出.alert-element