1

我正在使用 YouTube 的 JS API 并显示视频播放器,Google 在文档中建议使用 embedSWF,如下所示:

  <script type="text/javascript" src="swfobject.js"></script>    

  <div id="ytapiplayer">
    You need Flash player 8+ and JavaScript enabled to view this video.
  </div>

  <script type="text/javascript">

    var params = { allowScriptAccess: "always" };
    var atts = { id: "myytplayer" };
    swfobject.embedSWF("http://www.youtube.com/v/VIDEO_ID?enablejsapi=1&playerapiid=ytplayer&version=3","ytapiplayer", "425", "356", "8", null, null, params, atts);

  </script>

虽然这在我的计算机和 Android 设备上运行良好,但在 iOS 上,ytapiplayer div 不会变成嵌入式播放器,而只是显示其原始内容,即错误消息说需要 Flash 播放器 8+ 和 JS。

是否有可能让我的这个在 iOS 上工作?如果是这样,怎么做?

提前致谢!

4

2 回答 2

3

也许您应该尝试新的 YouTube iframe Player API?https://developers.google.com/youtube/iframe_api_reference

它适用于移动设备,无需考虑 Flash。嵌入示例:

<script type="text/javascript" src="//www.youtube.com/iframe_api"></script>

function onYouTubePlayerAPIReady() {
    var videoBox = document.getElementById('video1');
    videoBox.ytplayer = new YT.Player(videoBox, {
        videoId: 'kXDiGtgPL6E',
        playerVars: {
            //controls: 0,
            wmode:'transparent'
        },
        height: '200',
        width: '320'
    });
}
于 2012-10-09T11:58:03.160 回答
0

几个月前我为一个项目做了这件事......

Javascript,与您所拥有的非常相似:

<script type="text/javascript" src="js/swfobject.js"></script>
        <script type="text/javascript">
            var flashvars = {};
                flashvars.youTubeVideo = "VitQwgsBq-w";
                flashvars.controllerAlign = "top";
                flashvars.queTo = "0";
                flashvars.controlBarAlpha = ".3";
            var params = {};
            var attributes = {};
                swfobject.embedSWF("images/youTubeLoader.swf", "youTubeDiv", "250px", "200px", "9.0.0", false, flashvars, params, attributes);
</script>

swfobject.js 要做的是寻找一个名为“youTubeDiv”的 HTML div,并用一个 SWF youtube 播放器替换它的所有内容

(我这样做是因为 iframe 解决方案在我正在处理的 HTML5 项目中存在 z-index 问题)

现在是 HTML:

    <div id="youTubeDiv">
            <iframe width="250px" height="200px" src="http://www.youtube.com/embed/VitQwgsBq-w" frameborder="0" allowfullscreen></iframe>
    </div>
于 2012-10-09T12:44:00.027 回答