gpt4 book ai didi

javascript - Youtube API 使用不相关的 worker ?

转载 作者:行者123 更新时间:2023-11-28 07:27:52 25 4
gpt4 key购买 nike

这很奇怪。我正在使用 youtube JavaScript API 在我的网站上嵌入播放列表。一切都很好,除非我最近检查了我的 worker 的情况。看来 API 决定将其消息发送给其中之一。

这是我的工作人员正在接收的数据。

bubbles: falsecancelBubble: falsecancelable: falsecurrentTarget: Windowdata: "{"event":"infoDelivery","info":{"currentTime":109.455757,"videoBytesLoaded":1,"videoLoadedFraction":1},"id":1}"defaultPrevented: falseeventPhase: 0lastEventId: ""origin: "https://www.youtube.com"path: Array[1]ports: Array[0]returnValue: truesource: WindowsrcElement: Windowtarget: WindowtimeStamp: 1428083437641type: "message"__proto__: MessageEvent

正如我在另一个问题中看到的那样,Youtube API 是这样做的

www-embed-player.js:167 GET chrome-extension://enhhojjnijigcajfphajepfemndkmdlo/cast_sender.js net::ERR_FAILED

我没想到 Google 会创建如此有缺陷的 API。有没有办法禁用这些东西?

最佳答案

快速实验得出了解决方案。将所有 YouTube 代码移至单独的 html 并嵌入到我的父页面中。

<iframe id="youtubePlayer" src="mediaPlayer.html">

您仍然可以像这样从主页访问 youtube api

 var mediaPlater = document.getElementById('youtubeFrame').contentWindow.player;
// i.e. skip to next video
mediaPlayer.nextVideo();

这解决了完全意想不到的 worker 事件。这个控制台错误仍然存​​在,但在读到它无法修复后,它并没有打扰我。

www-embed-player.js:167 GET chrome-extension://

我的mediaPlayer.html的内容

<div id="ytplayer" class="musicPlayer"></div>
<script>
var player = null;
// Load the IFrame Player API code asynchronously.
var tag = document.createElement('script');
tag.src = 'https://www.youtube.com/player_api';
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);

// Replace the 'ytplayer' element with an <iframe> and
// YouTube player after the API code downloads.
function onYouTubePlayerAPIReady() {
player = new YT.Player('ytplayer', {
height: '180',
width: '280',
playerVars: {
autoplay: 1,
controls: 0,
listType: 'playlist',
list: 'RD4-OlYiH1DXI'
},
events: {
'onReady': onPlayerReady,
'onError': function () {
setTimeout(function () {
player.nextVideo();
}, 200);
}
}
});
}


function onPlayerReady() {
// fixes firefox ignoring first onerror if the first video is faulty
player.nextVideo();
}
</script>

关于javascript - Youtube API 使用不相关的 worker ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29437299/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com