首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >点击获取Youtube视频描述(html.push)

点击获取Youtube视频描述(html.push)
EN

Stack Overflow用户
提问于 2013-05-06 20:44:29
回答 1查看 1.5K关注 0票数 0

我正在与youtube api (2.0)合作,从一个特定的频道提取9个观看量最大的视频。我有一个视频播放器和一个缩略图列表与标题+缩略图图像+视图计数+描述。单击列表项时,选择的视频将加载到播放机中。目前一切都很好。

现在,我想添加yt视频描述,但不是作为列表项目的一部分(这已经很好),但旁边的播放器。这意味着我必须将'description‘值添加到loadVideo函数中,该函数在单击列表项时触发。但不管我怎么试都没用-

这是我的密码:

代码语言:javascript
复制
<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)将' description‘值添加到loadVideo函数中,并打印出描述。

2)还将'description‘添加到html.push块,该块定义单击事件onclick="loadVideo()“。对我来说,这是最大的问题,我无法获得正确的语法来传递描述值。

3)默认情况下,第一个视频将加载到播放机中,因此我也必须在这里添加描述,其工作方式如下:

代码语言:javascript
复制
  if (entries.length > 0) {
    loadVideo(entries[0].media$group.media$content[0].url,
    entries[0].media$group.media$description.$t.substr(0, 100), 
    false
    );
  }

下面还有一个测试页面:test.html

好吧,这就是我目前所拥有的。有没有人知道如何显示点击视频的描述?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-05-06 22:22:03

我已经编写了一些类似的东西,但依赖于jQuery库。希望这是一个很好的起点。

如果是我,我将重写下面的整个loadVideo函数,以便只使用在

  • 。例如,视频URL和CSS中的span将被声明为"display:none“。 完整文档:UPDATE- IE在我更新$.json函数以使用$.ajax之前不喜欢这个请求。通过切换到ajax函数,我做了一些改进,我关闭了IE的缓存,并添加了数据类型"jsonp“,它允许IE进行跨域request.UPDATE:这是对loadVideo函数的更新,防止了自动播放。 函数loadVideo(playerUrl,autoplay,index) { var $this =$(‘#var li’).eq(索引);console.log(自动播放?1:0);( '&rel=1&border=0&fs=1&showinfo=0&autohide=1&autoplay=0',+ playerUrl 'player','450','250','9.0.0',假,假,{全屏:'true'};$(‘#desc’).html($this.find(‘.desc’).html( );}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16406977

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档