几个月来我一直在使用 YouTube IFrame Player API 没有问题,最近在播放器加载时开始看到此异常:Uncaught ReferenceError: ytcfg is not defined
检查 iframe,我看到对 yt.setConfig
的成功调用,但后来 ytcfg.set
失败。 API 最近是否更改了?任何播放器参数都可能导致此问题?
<script src="//s.ytimg.com/yts/jsbin/www-embed-player-vflnzmqns/www-embed-player.js" type="text/javascript" name="www-embed-player/www-embed-player"></script>
<script src="//s.ytimg.com/yts/jsbin/player-en_US-vflr--npw/base.js" name="player/base"></script>
<script>
yt.setConfig({
...
});
writeEmbed();
</script>
<script>
ytcsi.info('st', 35);
ytcfg.set({
"TIMING_ACTION": "",
"CSI_VIEWPORT": true,
"TIMING_INFO": {
"c": "WEB",
"yt_li": 1,
"cver": "1.20161112",
"yt_lt": "cold"
},
"CSI_SERVICE_NAME": "youtube"
});
;</script>
这个问题有几种变体:
https://issuetracker.google.com/issues/35178202“ytcfg 未定义”https://issuetracker.google.com/issues/35177930“__ytRIL 未定义”
这是一个谷歌错误。它也发生在 Youtube 的开发者页面上。 https://developers.google.com/youtube/youtube_subscribe_button
以下错误跟踪此问题。
https://code.google.com/p/gdata-issues/issues/detail?id=8569(截至 2017 年 1 月 5 日仍然有效)
请使用下面的链接对此错误进行投票,以引起他们的注意。自 2016 年 9 月 9 日以来,他们一直坐在上面!!
当您单击任何视频下的“共享”按钮,然后单击“嵌入”选项卡复制粘贴嵌入的 html 代码时,即使在 youtube.com 上也开始发生这种情况。绝对是他们的错。
我遇到过同样的问题。临时修复是使用对象而不是 iframe。它对我有用。
__ytRIL is not defined
错误仍未修复