我正在使用 youtube api (2.0) 从特定频道中提取 9 个观看次数最多的视频。我有一个视频播放器和一个带有标题 + 缩略图 + 观看次数 + 描述的缩略图列表。单击列表项时,所选视频将加载到播放器中。到目前为止一切都很好。
现在我想添加 yt-video 描述,但不是作为列表项的一部分(已经可以正常工作),而是在播放器旁边。这意味着我必须将“描述”值添加到 loadVideo 函数,该函数在单击列表项时触发。但这不起作用,无论我尝试什么:-(
这是我的代码:
<script type="text/javascript" src="http://swfobject.googlecode.com/svn/trunk/swfobject/swfobject.js"></script>
<script type="text/javascript">
// Load Video
function loadVideo(playerUrl, autoplay) {
swfobject.embedSWF(
playerUrl + '&rel=1&border=0&fs=1&showinfo=0&autohide=1&autoplay=' +
(autoplay?1:0), 'player', '450', '250', '9.0.0', false,
false, {allowfullscreen: 'true'});
}
// Get feed data and push thumbnails
function showMyVideos2(data) {
var feed = data.feed;
var entries = feed.entry || [];
var html = ['<ul class="videos">'];
for (var i = 0; i < entries.length; i++) {
var entry = entries[i];
var title = entry.title.$t.substr(0, 20);
var description = entries[i].media$group.media$description.$t.substr(0, 100);
var thumbnailUrl = entries[i].media$group.media$thumbnail[0].url;
var playerUrl = entries[i].media$group.media$content[0].url;
var viewcount = entry.yt$statistics.viewCount;
html.push('<li onclick="loadVideo(\'', playerUrl, '\', true)">',
'<span class="titlec">', title, '...</span><br /><img src="',
thumbnailUrl, '" width="130" height="97"/><br /><span class="views">Views: ', viewcount,'</span><br><span class="views">', description,'</span></li>');
}
html.push('</ul><br style="clear: left;"/>');
document.getElementById('videos2').innerHTML = html.join('');
// Load first video by default
if (entries.length > 0) {
loadVideo(entries[0].media$group.media$content[0].url, false);
}
}
</script>
<!-- Output -->
<div style="width:800px; margin: 0 auto;">
<div id="playerContainer" style="width: 100%; height: 250px; float: left;"><object id="player"></object></div>
<div id="videos2"></div>
</div>
<!-- JSON Feed -->
<script type="text/javascript" src="http://gdata.youtube.com/feeds/users/100stimmen/uploads?alt=json-in-script&callback=showMyVideos2&max-results=9&orderby=viewCount">
</script>
我想我必须操纵三件事:
1) 在 loadVideo 函数中添加 'description' 值并打印出描述。
2) 还将“描述”添加到定义点击事件onclick="loadVideo()"的 html.push 块中。这对我来说是最大的问题,我无法获得正确的语法来传递描述值。
3)默认情况下,第一个视频将加载到播放器中,所以我也必须在此处添加描述,其工作原理如下:
if (entries.length > 0) {
loadVideo(entries[0].media$group.media$content[0].url,
entries[0].media$group.media$description.$t.substr(0, 100),
false
);
}
这里还有一个测试页面:http: //viniblu.de/public/youtube_test.html
嗯,这就是我到目前为止所拥有的。有人知道如何显示点击视频的描述吗?