9

我已经做了很多搜索,但到目前为止找不到解决方案......

我有一个 Youtube 播放列表。我想把它嵌入到一个网站上。但不是总是从第一个视频开始,我希望它从一个随机视频开始,或者至少是一个特定的视频(我可以使用服务器端代码随机选择)。

我查看了 iframe 嵌入 URL 的选项,但看不到允许我对此进行任何控制的参数。有可能吗?

否则我认为我需要在 JavaScript 中使用 API 做一些事情。有人可以粘贴或指向我可以用来完成此操作的一些示例代码吗,因为我之前没有使用过 Youtube API?

4

4 回答 4

16

在您的服务器上生成一个随机数,然后在 url 中使用 index 参数。这是一个示例,其中播放列表将通过添加 index=7 从第 7 个项目开始。

<iframe width="560" height="315" src="http://www.youtube.com/embed/videoseries?list=PL9C5815B418D1508E&index=7" frameborder="0" allowfullscreen></iframe>

另一种选择是使用 js api,调用 loadPlaylist 并包含 index 参数。 https://developers.google.com/youtube/js_api_reference#loadPlaylist

**编辑:由于 Google 引入了 YouTube 的 3.0 API,该index参数现在是从零开始的。因此,如果我们想从第 7 个视频开始,我们将修改上面的示例,使用&index=6而不是&index=7.

(链接:https ://developers.google.com/youtube/iframe_api_reference#Queueing_Functions_for_Playlists )

于 2012-10-11T05:45:48.863 回答
2

根据 Greg 的回答,我制作了这段代码,并且可以正常工作!

`
<?php
$min=1;  $max=8;  //the number of videos on your playlist
?>
<object width="746" height="413"><param name="movie" value="http://www.youtube.com/p/CAAA1242CA3E37B4?version=3&hl=es_ES&fs=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param>
<?php
//in index the script randomize the numbre between $min $max
echo "
<embed src=\"http://www.youtube.com/p/CAAA1242CA3E7B4?version=3&hl=es_ES&fs=1&index=".rand($min,$max)."\" type=\"application/x-shockwave-flash\" width=\"746\" height=\"413\" allowscriptaccess=\"always\" allowfullscreen=\"true\">
</embed>
";
?>
</object>
`
于 2013-05-25T16:13:58.500 回答
1

在我的上下文中,我稍微更改了 Mauricio 的编码:

 index=<?php print(rand(1,50)) ?>  

(我这里直接放了 min 和 max )

于 2016-02-27T15:12:53.493 回答
-1

你应该检查http://code.google.com/p/swfobject/http://popcornjs.org/

这是使用 PopCornJS 的示例: http ://www.seuratt.net/rhi-popcorn/demos/videojs-playlist.html

于 2012-10-11T02:17:09.047 回答