使用 JavaScript 控制实际 YouTube 网站上的 YouTube 视频

Controlling YouTube videos on the actual YouTube site with JavaScript

我查看了 YouTube API 和各种文档功能,使用 JavaScript 抓住视频播放器按钮来停止和开始播放视频。

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

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

是否有任何解决方案,比如 onComplete 等待新内容更新的方法?

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

只有 React 并且很普通 Javascript!谢谢!

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

解决方案: 使用 setTimeout(()=>{//Function goes here}, //等待时间,以毫秒为单位)


原答案: 你可以使用像

这样的东西
document.getElementsByClassName('ytp-play-button ytp-button').length

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