有没有办法延迟javascript中的函数我想做这样的事情:
function showLabel(){
document.getElementById(id).show();
wait(5000); //wait 5 sec
document.getElementById(id).hide();
}
如果调用此函数,我想显示标签5秒,可能还有另一种方法。
注意:我无法使用jQuery
答案 0 :(得分:1)
提示:使用setTimeout
window.setTimeout("javascript function", milliseconds);
阅读文档并了解如何操作:https://developer.mozilla.org/en/docs/Web/API/window.setTimeout
如果你想要睡觉之类的话:
function sleep(millis, callback) {
setTimeout(function()
{ callback(); }
, milliseconds);
}
我更喜欢:
function doStuff()
{
//do some things
setTimeout(continueExecution, 10000) //wait ten seconds before continuing
}
function continueExecution()
{
//finish doing things after the pause
}
使用循环的另一种方法
<script type="text/javascript">
// bad implementation
function sleep(milliSeconds){
var startTime = new Date().getTime(); // get the current time
while (new Date().getTime() < startTime + milliSeconds); // hog cpu
}
</script>
答案 1 :(得分:1)
你可以试试这个:
function showLabel(){
document.getElementById(id).show();
setTimeout(function()
{
document.getElementById(id).hide();
}, 5000);
}
将setTimeout
用于一次性任务,否则setInterval
用于重复性任务。
答案 2 :(得分:0)
setTimeout(
function(){ Your_function }, milliseconds
);
在给定时间结束后调用该函数。
答案 3 :(得分:0)
在javascript中使用setTimeout
函数。并通过
var timerId = setTimeout(function showLabel(){
document.getElementById(id).show();
document.getElementById(id).hide();
}, 5000);
clearTimeout(timerId);