我对JavaScript很陌生,所以在回答我的问题时请记住这一点。
我试图在特定时间段内向用户询问问题。使用window.prompt()
方法询问问题。我在do while
函数中有一个askquestions()
循环,你可以看到:
var randomNo1;
var randomNo2;
var time;
do {
randomNo1 = Math.random() * 9;
randomNo1 = Math.round(randomNo1);
randomNo2 = Math.random() * 9;
randomNo2 = Math.round(randomNo2);
window.prompt("What is " + randomNo1 + " + " + randomNo2 + "?")
} while (time == 0);
如何在30秒后将其设为time = 1
?
在此先感谢您的帮助。
答案 0 :(得分:1)
您可以使用:
document.setTimeout("str js code/func name call",millisec);
document.setTimeout("time=1;",30000);
用延迟执行一次js代码
对于您的规范,可能需要以下方法用于其他计时目的:
document.setInterval("js code /func name call",millisec);
以间隔执行
此外,强烈建议不要在js代码中“等待”以提供一些计时服务,这可能会导致浏览器将此线程作为无响应的线程
答案 1 :(得分:0)
你可以使用
获得自1970年1月1日以来的毫秒数date = new Date();
mil = date.getTime();
您可以在代码的开头进行比较,然后在循环中获得更新的代码。如果两者之间的时间大于某个毫秒数,则可以退出循环(while(curDate.getTime()-mil<30000)
将是30秒)