2013-04-24 62 views
2

寻找一种在HTML,Javascript,PHP或CSS支持的视频播放器中显示YouTube视频的方法。可能是CSS。我不反对下载视频并自己托管它,但我希望让谷歌托管它。如何播放没有iframe的YouTube视频?

任何想法?

+0

http://support.google.com/youtube/bin/answer.py?hl=zh_CN&answer=171780 – Lyndon 2013-04-24 00:21:30

回答

1

当您嵌入视频时,您可以选择使用“旧嵌入代码”,该代码使用对象标签而不是iframe。这里有一个例子:

<object width="560" height="315"> 
 
    <param name="movie" value="http://www.youtube.com/v/aBcDeFg?hl=en_US&amp;version=3"></param> 
 
    <param name="allowFullScreen" value="true"></param> 
 
    <param name="allowscriptaccess" value="always"></param> 
 
    <embed src="http://www.youtube.com/v/aBcDeFg?hl=en_US&amp;version=3" type="application/x-shockwave-flash" width="560" height="315" allowscriptaccess="always" allowfullscreen="true"></embed> 
 
</object>

0

一个更好的方法:使用雅虎媒体播放器!

只需在您的页面正文中包含此代码:
<script type="text/javascript" src="http://webplayer.yahooapis.com/player.js"> </script>
只需在页面正文上添加一个YouTube视频链接即可。然后,当它被点击时,它会发挥!另外,如果您添加多个视频/音频文件,则它将包含播放列表中的所有内容。点击此处了解详情:http://webplayer.yahoo.com/或更多的代码,并在这里演示:http://webplayer.yahoo.com/get/
Shadowpat

+1

这是一个非常酷的脚本,感谢您分享它。不过,我需要将视频显示为iframe,但不包含iframe。 iframe与移动网站无法正常工作。 – user2200638 2013-04-24 01:32:01

+0

哦,我明白你的意思了。是的,雅虎播放器在移动网站上可能有点奇怪。我猜你不想使用iframe的原因是因为它们可能无法在移动设备上正确显示,甚至无法支持。也许有一个插件可以做到这一点? – Shadowpat 2013-04-24 22:45:16

+2

这些链接404'...源代码在哪里? – 2013-09-12 15:15:07

0

截至不迟于2015年1月27日:使用API​​的目标代码已被弃用:

3月9日, 2015

该文档已更新,以反映YouTube嵌入,YouTube Flash Player API和YouTube JavaScript Player API已于2015年1月27日全部弃用的事实。此文档的几个部分中出现弃用警告以帮助读者指向IFrame Player API替代。

的API代码可以看起来像:

<div id="ytplayer"></div> 

<script> 
    // Load the IFrame Player API code asynchronously. 
    var tag = document.createElement('script'); 
    tag.src = "https://www.youtube.com/player_api"; 
    var firstScriptTag = document.getElementsByTagName('script')[0]; 
    firstScriptTag.parentNode.insertBefore(tag, firstScriptTag); 

    // Replace the 'ytplayer' element with an <iframe> and 
    // YouTube player after the API code downloads. 
    var player; 
    function onYouTubePlayerAPIReady() { 
    player = new YT.Player('ytplayer', { 
     height: '360', 
     width: '640', 
     videoId: 'M7lc1UVf-VE' 
    }); 
    } 
</script> 

双方报价和代码来源:https://developers.google.com/youtube/player_parameters

在寻找:https://developers.google.com/youtube/youtube_player_demo

页面的源显示, API将播放器作为html发出,并带有用于实际视频显示的视频标签:

<div id="player" style="width: 100%; height: 100%;"> 
<div class="html5-video-player unstarted-mode ytp-hide-controls" tabindex="-1" id="player_uid_7211231_1" data-version="/yts/jsbin/player-vflC8Yy7I/en_US/base.js" aria-label="YouTube Video Player"> 
     <div class="html5-video-container" data-layer="0"> 
      <video tabindex="-1" class="video-stream html5-main-video" controlslist="nodownload" style="width: 720px; height: 405px; left: 0px; top: -405px;"></video> 
     </div> 
     <div class="ytp-gradient-top" data-layer="1"></div> 
     ... 
</div> 
</div>