我正在使用服务器端方法来放入带有播放列表和功能按钮的 YouTube 视频(想想一个可以在页面上调用的网站小部件,并且可能在页面上不止一次调用)。
我正在使用 IFrame API。我可以通过在 onYouTubeIframeAPIReady() 方法中创建一个新的 YT.Player 实例来渲染单个视频。这对我来说很有意义 - 等待加载库。但是,当我想在一个页面上拥有多个视频播放器时,我不知道如何触发第二个、第三个、第四个等的启动。
我不能定义另一个 onYouTubeIframeAPIReady() 方法,因为它会覆盖第一个。如何向页面添加更多玩家?在这个初始方法被触发后,没有办法创建更多视频似乎很奇怪......
有关上述方法的文档在这里: https ://developers.google.com/youtube/iframe_api_reference#Loading_a_Video_Player
提前致谢。
编辑:(为了澄清Miha Lampret的第一个答案)
我无法在 onYouTubeIframeAPIReady() 方法中声明其他播放器,因为此代码是通过称为“小部件”的服务器端引入的。所以而不是:
function onYouTubeIframeAPIReady() {
ytplayer1 = new YT.Player('player-youtube-1', {
width: '640',
height: '480',
videoId: 'M7lc1UVf-VE'
});
ytplayer2 = new YT.Player('player-youtube-2', {
width: '640',
height: '480',
videoId: 'smEqnnklfYs'
});
}
我的代码相当于:
function onYouTubeIframeAPIReady() {
ytplayer1 = new YT.Player('player-youtube-1', {
width: '640',
height: '480',
videoId: 'M7lc1UVf-VE'
});
}
function onYouTubeIframeAPIReady() {
ytplayer2 = new YT.Player('player-youtube-2', {
width: '640',
height: '480',
videoId: 'smEqnnklfYs'
});
}
onYouTubeIframeAPIReady() 只执行一次。我需要检查的是是否已经执行过一次。