【问题标题】:Stop setInterval when video is paused (Youtube player)视频暂停时停止 setInterval(Youtube 播放器)
【发布时间】:2014-07-13 18:36:37
【问题描述】:

我对这个问题有些困难。我使用 youtube api 在我的网站上集成视频。

为了控制时间,我需要使用 setInterval 函数来获取当前时间。setInterval 每 100 毫秒轮询一次。 唯一的问题,如果你暂停,或者停止视频,setInterval 会继续每 100ms 轮询一次,他永远不会停止。

我真的不知道用我的代码停止它,我看到clearInterval 的基本示例,但代码更复杂。 我做了一个现场例子,播放视频,你会在输出控制台看到问题。

http://jsbin.com/pazamihi/1/edit?html,js,console,output

问题示例:

http://i.gyazo.com/be10ae615d28b8502783975e216fad54.png

【问题讨论】:

    标签: javascript jquery video youtube setinterval


    【解决方案1】:

    我认为解决方案并不那么棘手。 我首先将 mytimer 添加到全局范围:

    var mytimer; //declare variable mytimer in global scope for later usage
    function onPlayerStateChange(event) {
    ...
    

    在 onPlayerStateChange() 函数中有一个包含 //Video has paused 的 else 条件。 将该行替换为

    clearTimeout(mytimer);
    

    这对我有用。

    【讨论】:

      猜你喜欢
      • 2018-12-05
      • 1970-01-01
      • 2013-08-16
      • 2018-05-28
      • 2014-08-02
      • 2014-08-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多