jQuery从youtube加载元标记内容

时间:2012-02-02 18:42:35

标签: jquery

我想在用户输入链接并按下提交时从youtube加载元标记。 我试过了以下内容:

<div id="container">
<center>
<input type="text" id="url" />
<div><a href="#" id="loadnow">Load youtube  video</a></div>
    <div id="wrap">
        <div id="title"></div>
        <div id="info"></div>
        <div id="link"></div>
        <div id="video"></div>
    </div>
</center>
</div>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function(){
$('#loadnow').click(function(){
    var url = $('#url').val();
    $('#wrap').fadeOut(function(){
            $('#title').load(url + 'meta[itemprop=name]').attr("content");// second try
        $('#info').load('url meta[itemprop=description]'); //first try
        $('#link').load('url meta[itemprop=url]');
        var videoUrl = $('#video').load('url meta[itemprop=name]');
        $('#video').html("<iframe width='560' height='315' src='"+videoUrl+"' frameborder='0' allowfullscreen></iframe>");
        $('#wrap').fadeIn();
    });
});
});
</script>

如何从youtube加载这些元标记并将其输出给用户? 我无法在谷歌上找到任何关于它的内容 编辑:它不会返回任何内容。

2 个答案:

答案 0 :(得分:0)

所以这几乎是有效的:$('#title').load(url + 'meta[itemprop=name]').attr("content");,变量被编入字符串的其余部分,但是你需要url变量和字符串其余部分之间的空格,以便jQuery知道{ {1}}不是网址的一部分:

meta[itemprop=name]

现在您将遇到要从其他域请求内容的问题。因此,您需要使用JSONP或创建一个服务器端代理,为您收集远程信息。

更新

我认为对您有所帮助的是设置代理以从YouTube网站获取信息,或者更好您可以使用其中一个YouTube API:http://code.google.com/apis/youtube/overview.html

答案 1 :(得分:0)

您尝试通过AJAX访问其他域上的内容。由于same origin policy,这是不可能的。