需要帮助使用jQuery(YouTube API v3)从视频中获取标题

时间:2015-03-10 05:28:55

标签: jquery youtube-api

所以,我最近遇到了如何使用YouTube API v3,我个人从他们的API中学到了很多东西 - 我想知道的是怎么做我获取了视频的标题,因此当搜索一个术语时,它将显示视频的标题。

这是我的代码:http://codepen.io/mistkaes/pen/MYqrXW

一如既往,感谢您的帮助!

    function openIt(videoId) {
 ideVideo = videoId,
 container = "#abrePlayer";
 //open a lightbox, or do something else with the video id. In this case, let's create an iframe to play the little bastard.
 iframe = '<iframe width="600" height="400" src="//www.youtube.com/embed/'+ideVideo+'" frameborder="0" allowfullscreen></iframe>';
  $(container).html(iframe)
};

$(document).ready(function() {
  //find using typed word
  $('#searchIt').keyup(function() {
    var itemsPerPage = 20;
    var term = $(this).val();
    var searchUrl = 'http://gdata.youtube.com/feeds/api/videos?q='+term+'&format=5&max-results='+itemsPerPage+'&v=2&alt=jsonc';

    $.ajax({
            type: "GET",
            url: searchUrl,
            dataType: "jsonp",
            success: function(res) {
     $("#resultadosGerais").html('');
        console.log();

        if(res.data.items){
          //if there are items in our response
          var item = res.data.items;

          $.each(item, function(i, data) {
            var videoId = data.id;
            var thumb = "https://i.ytimg.com/vi/" + videoId + "/default.jpg";

            var showThis = '<div id=\"result\" onClick=\"openIt(\''+ videoId + '\');"> <img src=\"' + thumb + '\" /><p id=\"media-header\">'+videoId+'</p></div><br />';
            $("#resultadosGerais").append(showThis);
          });
        } else {
          $("#resultadosGerais").append('No Results Found');
        }
      }})
  });
});

1 个答案:

答案 0 :(得分:0)

您可以使用示例网址轻松分析您从youtube API获得的回复,即http://gdata.youtube.com/feeds/api/videos?q=Beethoven&format=5&max-results=1&v=2&alt=jsonc

这将返回一个JSON数组,您将在预览中显示该数组。我相信你试图在那里显示标题而不是ID?

var showThis = '<div id=\"result\" onClick=\"openIt(\''+ videoId + '\');"> <img src=\"' + thumb + '\" /><p id=\"media-header\">'+data.title+'</p></div><br />';
        $("#resultadosGerais").append(showThis);

此处的密钥为data.title,其中包含视频标题