Javascript 如何在一段时间后执行函数

Javascript 如何在一段时间后执行函数,javascript,Javascript,我想写一个javascript代码,在那里我可以在30分钟后执行一个函数 假设我有一个名为getScore的函数和另一个名为getResult的函数。我希望这些函数在30分钟后执行 这是用于测验的,测验持续时间为30分钟,因此在时间过去后,应执行这两个功能。您应使用: “1800000”是您希望在此之后执行此函数的时间(以毫秒为单位)。在这种情况下,30分钟。如果您想显示元素,可以使用此代码,这将显示按钮 function myFunc(){ var linkEd =

我想写一个javascript代码,在那里我可以在30分钟后执行一个函数

假设我有一个名为
getScore
的函数和另一个名为
getResult
的函数。我希望这些函数在30分钟后执行

这是用于测验的,测验持续时间为30分钟,因此在时间过去后,应执行这两个功能。

您应使用:


“1800000”是您希望在此之后执行此函数的时间(以毫秒为单位)。在这种情况下,30分钟。

如果您想显示元素,可以使用此代码,这将显示按钮

     function myFunc(){
        var linkEd = document.getElementById("buttonID");
        var timing = 6;
        var text_timing = document.createElement("span");
        linkEd.parentNode.replaceChild(text_timing, linkEd);
        var id;
        id = setInterval(function() {timing--;
      if (timing < 0) {
        clearInterval(id);
       text_timing.parentNode.replaceChild(linkEd, text_timing);
      } else {
       text_timing.innerHTML = "<h3 class='yourclass'>Button will appear after  <strong>" + timing.toString() + "</strong>  second</h3>";
      linkEd.style.display = "inline";
      }
    }, 1000);
}
函数myFunc(){
var linkEd=document.getElementById(“buttonID”);
var定时=6;
var text_timing=document.createElement(“span”);
linkEd.parentNode.replaceChild(文本,链接);
变量id;
id=setInterval(函数(){计时--);
如果(定时<0){
清除间隔(id);
text\u timing.parentNode.replaceChild(链接的,text\u timing);
}否则{
text_timing.innerHTML=“按钮将出现在”+timing.toString()+“秒”之后;
linkEd.style.display=“inline”;
}
}, 1000);
}
这是为了显示时间毫秒

按钮将在“+timing.toString()+”之后出现 秒


要调用时间并显示按钮,请使用onclick事件在之后显示按钮 时间0

显示时间

使用“显示无”隐藏按钮

时间过后


setTimeout()
setInterval()
可能是您应该研究的方法!:)用户是否将在整个30分钟内停留并且不重新加载页面?在什么之后的30分钟之后?(页面加载,点击ona按钮?);这里很少有像W3这样的学校:)我不知道为什么它不起作用。setTimeout(函数(){getScore(this.form);getQs();showReports();},10000);-我正在开发IE8,它兼容吗?我怀疑这个表单没有帮助<代码>var ctx=此然后
getScore(ctx.form)
无论你在哪里尝试使用这个.form,也许?对于其他功能,它的工作就像一个符咒(非常感谢),除了getScore(form)它不工作,还有其他想法吗?NP。也许可以修改getScore函数,使其不需要传递“form”,并在调用它时从DOM中再次找到它?这并没有明确回答问题,我认为过于复杂了。
     function myFunc(){
        var linkEd = document.getElementById("buttonID");
        var timing = 6;
        var text_timing = document.createElement("span");
        linkEd.parentNode.replaceChild(text_timing, linkEd);
        var id;
        id = setInterval(function() {timing--;
      if (timing < 0) {
        clearInterval(id);
       text_timing.parentNode.replaceChild(linkEd, text_timing);
      } else {
       text_timing.innerHTML = "<h3 class='yourclass'>Button will appear after  <strong>" + timing.toString() + "</strong>  second</h3>";
      linkEd.style.display = "inline";
      }
    }, 1000);
}