这个脚本如何暂停youtube视频
How do this script pause youtube videos?
我注意到这个用户脚本(这是相当流行的很好的理由)暂停视频在另一个标签,每当我按下播放视频在这个标签。源头被缩小了,但看来就是这里了https://github.com/YePpHa/YouTubeCenter/blob/master/src/YouTubeCenter.user.js
我不知道从哪里开始,所以我搜索'pause'的所有实例。我以为22801行是,但现在不这么认为了。我也不明白发生了什么。打字ytcenter。控制台的_intercomOnPlayer给了我undefined
。在它下面8行(22809),它说"ytcenter"。所以我觉得我读错了地方。我看到"@grant GM_xmlhttpRequest"。我看了看firebug的网络选项卡,什么也没看到,至少没有任何相关的内容。
它如何与另一个选项卡通信以暂停视频?
我想这是负责任的:
ytcenter.player.network.pause();
第22893行我发现它通过维基github链接https://github.com/YePpHa/YouTubeCenter/wiki/Features#Only_One_Player_Instance_Playing在代码中我正在寻找"Only_One_Player_Instance_Playing"短语
我也认为,标签当然不能相互通信。它必须通过youtube api…
那边有个新问题。ytcenter.player.network.pause()
这条线是怎么工作的?
我不能自己运行代码。有一些错误,我太懒了,没有修理它。但我是遵循pause
方法。首先,我认为这是youtube api的原生功能,但我错了。是18600行。里面是另一个键
intercom.emit("player", {
action: "pause",
origin: intercom.origin
});
更深入地指向emit
函数。可以猜到,emit
也不是youtube API的原生函数。它调用_emit
函数和一些事件。_emit
是10754行的关键字。这是结束,一些魔术在内部完成,包括localStorage
和settimeout
。我相信这就是答案。本地存储是共享的,我在路上看到了setInterval
函数。一旦视频暂停,它就会向本地存储发送消息,这些消息只会保存很短的一段时间。其他选项卡将通过setInterval注意到。
- Youtube Javascript API播放/暂停/停止不工作
- YouTube暂停,播放&停止不工作
- 暂停HTML5视频,如果它是使用空格键像youtube互动
- 暂停YouTube视频,youtube api
- 使用 javascript 或 jquery 暂停 youtube 视频
- YouTube嵌入 - 播放/暂停播放
- BXSlider 切换幻灯片时暂停 Youtube 视频
- 使用youtube API中的按钮播放和暂停iframe视频
- 播放Soundcloud嵌入时暂停Youtube嵌入
- 暂停/播放多个嵌入式youtube播放器
- 当使用javascript onblur时,在Iframe中暂停youtube和/或vimeo视频
- 可以´t关闭灯箱,停止/暂停嵌入的youtube视频(youtubeapi)
- 如何在隐藏iframe时暂停YouTube播放器
- 在父元素的悬停出口动态实例化/暂停Youtube视频(iFrame API)
- 当页面被隐藏时,暂停youtube视频
- SlickJS视频旋转木马暂停YouTube视频,并永久隐藏占位符图像
- 当用户滚动离开时,我如何暂停youtube嵌入
- 如何在控制台中播放和暂停Youtube视频
- 暂停youtube和vimeo编程,并检测视频是否正在播放
- 这个脚本如何暂停youtube视频