获取Youtube标题给出了id

时间:2014-04-28 23:37:31

标签: javascript jquery html json youtube

我找到了一个很好的参考,获得了youtube视频标题给出了Youtube视频ID但我不确定如何在他给出的函数中返回标题。在videoInfoCallback函数中,我有它返回消息,但我不知道是什么被传递到info参数。有什么建议。以下是我使用的资源:Parser

以下是我正在玩的代码:

function registerScript(url) {
            var s = document.createElement('script');
            s.type = 'text/javascript';
            s.src = url;
            document.getElementsByTagName('head')[0].appendChild(s);
        }

        function videoInfoCallback(info) {
            if (info.error) {
                alert('Error\n\n' + info.error.message);
            } else {
                var message = info.data.title;
                return message;
            }
            return "hello";
        }


        function getVideoInformation(id) {
            if (id) {
                return registerScript('https://gdata.youtube.com/feeds/api/videos/' + id + '?v=2&alt=jsonc&callback=videoInfoCallback');
            } else {
                alert('Please enter an id.');
            }
        }

基本上,我想要一个接收Youtube视频ID的功能,如CFF0mV24WCY,并让它返回标题。

1 个答案:

答案 0 :(得分:1)

它并没有真正回答你的上述问题,但它可能会帮助你完成任务

它只是一个简单的YouTube搜索,带来标题视频和视图计数

html

<input type="text" id="Search"  /><br/>
<input id="show" type="button" value="Submit" onclick="Show();"/>

<div id="result">

</div>

JavaScript

$(document).ready(function () {
    $("#show").click(function () {
        getYoutube($("#Search").val() + "Offical Film Trailer");
    });
});

function getYoutube(title) {
    $.ajax({
        type: "GET",
        url: yt_url = 'http://gdata.youtube.com/feeds/api/videos?q=' + title + '&format=5&max-results=1&v=2&alt=jsonc',
        dataType: "jsonp",
        success: function (response) {
            if (response.data.items) {
                $.each(response.data.items, function (i, data) {
                    var video_id = data.id;
                    var video_title = data.title;
                    var video_viewCount = data.viewCount;
                    var video_frame = "<iframe width='600' height='385' src='http://www.youtube.com/embed/" + video_id + "' frameborder='0' type='text/html'></iframe>";
                    var final_res = "<div id='title'>" + video_title + "</div><div>" + video_frame + "</div><div id='count'>" + video_viewCount + " Views</div>";
                    $("#result").html(final_res);
                });


            } else {
                $("#result").html("<div id='no'>No Video</div>");
            }
        }
    });
}