setTimeout函数无延迟地执行代码。 Javascript [重复]

问题描述 投票:1回答:2

谁能解释为什么会这样。我已经在JS中创建了一个函数,并尝试使用setTimeout函数在60秒后调用它。但是它在页面加载后立即运行。为什么会发生这种情况,而setTimeout不会延迟功能代码?下面是代码。

<script>

function first()
{

document.getElementById('addProductText').style.color="#32A067";

}
setTimeout(first(),60000);

</script>
javascript html function sleep
2个回答
1
投票

不带括号()使用函数调用:

setTimeout(first, 6000);

这样,您将引用该函数,而不是立即调用它。

工作示例:

function first() {
  document.getElementById('addProductText').style.color = "#32A067";
}
setTimeout(first, 6000);
<div id="addProductText">Hello World!</div>

0
投票

您只应传递name of the function而不调用它:

function first(){
     console.log("Hello")
}
setTimeout(first, 60000);
© www.soinside.com 2019 - 2024. All rights reserved.