使用 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
来等待整个页面加载完毕。希望对您有所帮助。
我查看了 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
来等待整个页面加载完毕。希望对您有所帮助。