X 秒后执行 JavaScript

我正在使用 < div > 和 JavaScript 构建一个间隙页面,脚本非常简单,但很整洁。

一切正常,但是我还想在几秒钟后关闭 div (比如10秒钟)。这是我目前掌握的信息:

  • I have two div's, 1 and 2.
  • 我已经为 div 1设置了 CSS,比如: display: none; (div 1有初始屏幕的内容)
  • Div 2 is the layer that will cover the page and leave only div 1 visible.

要加载 div,我有一个 onload 函数,如下所示:

onload="document.getElementById('div1').style.display='block';document.getElementById('div2').style.display='block'"

为了隐藏 div,我有一个 onclick 函数,如下所示:

<a href = "javascript:void(0)" onclick = "document.getElementById('div1').style.display='none';document.getElementById('div2').style.display='none'"></a>

How can I execute the onclick function with a timer, and how can I do it? It also has to be in JavaScript.

170138 次浏览
onclick = "setTimeout(function() { document.getElementById('div1').style.display='none';document.getElementById('div2').style.display='none'}, 1000)"

将1000更改为要延迟的毫秒数。

我相信你正在寻找的 SetTimeout功能。

为了使代码更简洁,在 <script>块中定义一个单独的 onclick 函数:

function myClick() {
setTimeout(
function() {
document.getElementById('div1').style.display='none';
document.getElementById('div2').style.display='none';
}, 5000);
}

然后从 onclick调用函数

onclick="myClick();"

SetTimeout 将帮助您根据设置的时间执行任何 JavaScript 代码。

语法

setTimeout(code, millisec, lang)

用法,

setTimeout("function1()", 1000);

有关详细信息,请参阅 http://www.w3schools.com/jsref/met_win_settimeout.asp