自动从 URI 嵌入 Youtube 视频

Posted

技术标签:

【中文标题】自动从 URI 嵌入 Youtube 视频【英文标题】:Automatically Embed Youtube Videos From URI 【发布时间】:2011-04-24 00:56:41 【问题描述】:

您将如何从 URI 中自动嵌入 youtube 视频。 比如说你在一个文本框中输入:

敏捷的棕狐跳过了这个视频http://www.youtube.com/watch?v=5qm8PH4xAss&feature=player_embedded然后掉进了这个http://www.youtube.com/watch?v=lSCSmpV8Nn8&feature=hp_SLN&list=SL

您按下提交,结果将显示给您。代替 youtube 链接,您有实际的 flash 文件。

(在php中自然,或任何语言)。

我知道您可以使用 Regex (preg_replace .etc),但是您将如何删除 youtube 提供的额外查询(即 &feature=blah),并将所有内容变成类似:http://www.youtube.com/v/5qm8PH4xAss,准备放入要嵌入的对象。

抱歉,这个问题太长了,.. 希望你能理解。 :)

【问题讨论】:

您是否查看过用于发出 Flash 代码的各种帮助程序,例如 jQuery.flash?听起来你已经想好了问题的另一半。 现在,这就是我喜欢 *** 的原因,这太棒了!但是我想要的是将视频嵌入到链接出现的同一位置,即在上面的示例中:快速的棕色狐狸跳过了这个视频 [EMBEDDED VIDEO GOES HERE] 和...等 只需插入一个命名的 div,然后在该 div 上使用 jQuery.flash。或者其他的东西。但如果是大视频,会不会显得很奇怪? 【参考方案1】:

我认为您正在寻找这样的东西: 在这里试试:http://www.jsfiddle.net/feridcelik/qu6U6/2/

<script src="http://code.jquery.com/jquery-1.4.2.min.js"></script>
<script src="http://jquery.lukelutman.com/plugins/flash/jquery.flash.js"></script>

<script type="text/javascript">

   var yt="http://www.youtube.com/v/";
   $("a[href^='http://www.youtube.com/watch?v=']").each(function()

        var key;
        var href =$(this).attr("href");
        var i=href.indexOf("v");
        href=href.substring(i+2,href.length);
        i=href.indexOf("&");
        if(i>-1)
            key=href.substring(0,i);
        
        href=yt+key;
        $(this).after("<a href='"+href+"' class='video'></a>");

    );

    $('.video').flash(
         height: 200, width: 200,
         version: 8 ,
        function(htmlOptions) 
            $this = $(this);
            htmlOptions.src = $this.attr('href');
            $this.before($.fn.flash.transform(htmlOptions));                        
        
    );
    $('.video').remove();

</script>

基于以下 Flash 插件: http://jquery.lukelutman.com/plugins/flash/

【讨论】:

以上是关于自动从 URI 嵌入 Youtube 视频的主要内容,如果未能解决你的问题,请参考以下文章

是否可以将 Redcarpet 扩展为从链接自动嵌入 youtube 视频?

使用自定义字段从 Youtube 或 Vimeo 嵌入背景视频

如何让嵌入的 Youtube 视频自动开始播放?

在嵌入式 YouTube 播放器中自动播放下一个视频

嵌入 YouTube 视频时自动高度?

嵌入带有自动播放和无控件的 youtube 视频