首页 > 解决方案 > YouTube IFrame 播放器无法正确执行 cuePlayList

问题描述

我有一个网站,我在 IFrame 中创建了一个 YouTube 播放器,并让它根据用户点击的内容抓取不同的播放列表。所以它调用player.cuePlaylist({listType:"playlist",list:playListID}) whereplayListID是当用户调用不同的播放列表时发生变化的变量。问题是函数第一次执行时它工作正常,但是一旦第二次要求它提示一个新的播放列表,它什么也不做,没有 400 错误消息或任何东西,但是当我调用第二个playList第二次,它的工作原理。

这个 cuePlayList 函数似乎有问题,因为这不是在一两个月前发生的。我可以看到 youtube Iframe API 的唯一变化是关于搜索列表,而不是播放列表,您可以在此处阅读

我重新创建了这个jsfiddle中的错误。只需按“新播放列表”按钮,它就会加载正确的播放列表,按另一个播放列表,它不会做任何事情,直到按两次。

那么我做错了什么还是在 YouTube 的 IFrame API 端?

提前致谢!

标签: javascriptyoutubeyoutube-iframe-api

解决方案


而不是破坏播放器,这意味着你不能再使用cuePlaylist()loadPlaylist()我发现如果你像这样调用 cue/load 函数两次,播放器会接受新的播放列表:https ://jsfiddle.net/5yw2na96/

cuePlaylist()我通过将功能链接到按钮并注意到您需要单击两次才能正确更新播放列表来发现此问题。空调用和实际调用之间似乎需要延迟,因此我将其设置为 500 毫秒。


推荐阅读