首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Youtube Js Api -seekTo(时间)需要很长时间来更新player.getCurrentTime()

Youtube Js Api -seekTo(时间)需要很长时间来更新player.getCurrentTime()
EN

Stack Overflow用户
提问于 2019-09-20 17:32:43
回答 1查看 181关注 0票数 1

当通过YouTube JavaScript API寻求一段时间时,player.getCurrentTime()需要一些时间才能返回正确的时间。相反,在一段时间内,它会返回过去的时间。

示例:

->当前视频时间: 10s

-> player.getCurrentTime() ->返回10s (正确)

-> player.seekTo(2s)

player.getCurrentTime() ->返回10s而不是2s (不正确)

->等2秒..。

-> player.getCurrentTime() ->返回12s (正确)

怎么能修好呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-10-11 04:15:04

我也遇到了同样的问题。我不知道如何才能准确地解决这个问题,但我正在用这样的方法来解决这个问题

代码语言:javascript
复制
  intervalId = setInterval( () => {
    var ytTime = ytplayer.getCurrentTime()
    [... do stuff here...]
  }, 500)

..。这并不是最理想的,尽管它适用于我需要它做的事情。

我已经在谷歌问题跟踪器上发布了一个问题,追踪'Youtube API‘问题,在这里:https://issuetracker.google.com/issues/142517061

但如果我不得不猜的话,这将被标记为一个设计的作品。对seekTo的调用需要做一些工作来执行查找,而且该工作可能是异步的,所以当我们在完成该工作之前调用getCurrentTime时,我们将得到一个似乎无效的时间,但实际上任务还没有完成。

请注意,在您调用seekTo之后,如果您做了类似的事情

代码语言:javascript
复制
setTimeout( () => { console.log(ytplayer.getCurrentTime()) }, 2000 )

那么你可能会看到正确的时间。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58032864

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档