【问题标题】:Controlling YouTube videos on the actual YouTube site with JavaScript使用 JavaScript 控制实际 YouTube 网站上的 YouTube 视频
【发布时间】:2019-03-16 17:57:16
【问题描述】:

我查看了 YouTube API 和各种文档函数,以获取视频播放器按钮以使用 JavaScript 停止和启动视频。

然而,YouTube 修改历史状态的方式似乎总是导致 mydocument.getElementsByClassName('ytp-play-button ytp-button')[0].click(); 在新视频加载之前运行。

我的目标是在加载新的 youtube 视频时暂停。

是否有任何解决方案,例如 onComplete 方法等到新内容更新?

我没有使用 JQuery,也不打算嵌入视频。

只有 React 和纯 Javascript!谢谢!

解决方案: 使用 setTimeout(function, time) 设置设置超时;就等着吧。

【问题讨论】:

    标签: javascript youtube youtube-javascript-api


    【解决方案1】:

    解决方案: 使用 setTimeout(()=>{//Function goes here}, //time to wait in ms)


    原答案: 你可以使用类似的东西

    document.getElementsByClassName('ytp-play-button ytp-button').length
    

    检查元素是否存在。我想你可以使用setTimeOut() 实现一个轮询功能来检查页面正在加载,并在按钮加载后采取相应的行动。或者,您可以使用简单的document.onload = ()=>{//do stuff here}DOMContentLoaded 来等待整个页面加载完毕。希望对您有所帮助。

    【讨论】:

    • YouTube 加载页面一次,每次导航都是一次状态历史更改。 On Load 只会在页面的初始刷新时调用。我已经有了 youtube 播放器的实例,但是,它只是播放的时间才是真正的问题。
    • 是的,我检查了你的意思。也许将你的函数包装在一个固定的超时时间?
    • 很高兴听到这个消息,我修改了答案,使其更加明显。
    猜你喜欢
    • 2014-06-21
    • 1970-01-01
    • 2021-03-25
    • 1970-01-01
    • 1970-01-01
    • 2011-12-04
    • 2016-03-20
    • 2013-03-28
    • 1970-01-01
    相关资源
    最近更新 更多