使用setTimeout运行功能,然后打印消息

时间:2018-08-22 02:19:20

标签: javascript

我需要使用JavaScript setTimeout进行一些指导。

我需要在60秒后执行player.stop,然后在它超时的页面上打印一条消息。

以下代码执行播放器。停止运行即可。

问题在于页面加载后而不是计时器用完后立即显示“ timestatus”消息。

有什么建议吗?

  onPlay:
  function()
  {
    setTimeout(() => player.stop(), 60000);
    document.getElementById("timestatus").innerHTML = timeMsg;
  },

2 个答案:

答案 0 :(得分:3)

编写此代码的方式中,setTimeout回调中唯一的事情是对player.stop的调用。您的代码说明了这一点:

  • 等待一分钟后超时
  • 此后立即设置innerHTML

您需要将两个语句都放在该回调函数中:

setTimeout( () => {
    player.stop();
    document.getElementById("timestatus").innerHTML = timeMsg;
}, 60000 );

新代码说明:

  • 排队等待1分钟后超时(当它被调用时,请执行2个单独的操作)

答案 1 :(得分:0)

消息必须位于setTimout回调函数中

onPlay: function() {
  setTimeout(function() {
    player.stop()
    document.getElementById("timestatus").innerHTML = timeMsg;
  }, 6000);
}