在特定时间调用javascript函数例如,我想在上午10点00分调用js函数,我该怎么办?<script type="text/javascript">var now = new Date();var millisTill10 = new Date(now.getFullYear(), now.getMonth(), now.getDate(), 0, 30, 0, 0) - now;setTimeout(function{openAPage(), setInterval(openAPage, 60*1000)}, millisTill10)function openAPage() {var startTime = new Date().getTime();var myWin = window.open("http://google.com","_blank")var endTime = new Date().getTime();var timeTaken = endTime-startTime;document.write("<br>button pressed@</br>")document.write(new Date(startTime));document.write("<br>page loaded@</br>")document.write(new Date(endTime));document.write("<br>time taken</br>")document.write(timeTaken);myWin.close()}</script>我期望在00.30这个代码它将打开谷歌,然后每1分钟后它会再次这样做?该代码有什么问题?
3 回答

FFIVE
TA贡献1797条经验 获得超6个赞
您需要setTimeout来设置一个计时器和Date来计算计时器在触发之前需要多长时间。
var now = new Date();var millisTill10 = new Date(now.getFullYear(), now.getMonth(), now.getDate(), 10, 0, 0, 0) - now;if (millisTill10 < 0) { millisTill10 += 86400000; // it's after 10am, try 10am tomorrow.}setTimeout(function(){alert("It's 10am!")}, millisTill10);

胡子哥哥
TA贡献1825条经验 获得超6个赞
假设代码位于将在10:00之前加载并仍将在10:00查看的网页上,您可以使用它setTimeout()
来设置定时事件。该函数需要执行一些JS语句,以及它应该执行之前的毫秒数。您可以使用内置日期功能轻松找到第二部分。
添加回答
举报
0/150
提交
取消