iOS Safari中嵌入的YouTube只是旋转

时间:2012-08-08 15:58:58

标签: ios5 youtube-api

我有一些非常小的页面,基本上加载了一个用于移动浏览器的视频。在最新的iOS(5.1.1)中,视频播放器加载,但随后只是旋转。可以通过点击视频播放视频,但由于它看起来仍在加载,人们可能不会这样做。在其他地方工作。

我正在使用youtube api代码

这是该页面的测试版本。 http://bit.ly/S2KuN1

以下是代码:

<!DOCTYPE HTML>
<html>
<head>
<title>Celebrity's Caribbean Shore Excursions</title>
<link href="http://www.celebritycruises.com/css/min/global.min.css" rel="stylesheet">
<link href="http://media.celebritycruises.com/celebrity/content/en_US/css/m_video.css" rel="stylesheet">
<script language="JavaScript" type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js"></script>

<script type="text/javascript" src="http://www.youtube.com/player_api"></script>
<script type="text/javascript">

// create youtube player
var player;

function onYouTubePlayerAPIReady() {
    player = new YT.Player('player', {
      videoId: 'PH-m591p4xg',
      events: {
        'onReady': onPlayerReady,
        'onStateChange': onPlayerStateChange
      }
    });
}
</script>
<script type="text/javascript" src="m_video.js"></script>
</head>
<body id="video_page">
<div class="logo"><a href="http://m.celebritycruises.com/m/home.do"><img src="http://media.celebritycruises.com/celebrity/content/en_US/images/cel_misc/logo.jpg" alt="Celebrity Mobile" width="259" height="55" border="0"></a></div>
<div id="player"></div>
<div class="visit">
<p>Now visit Celebrity Cruises' official mobile website.</p>
<p><a class="ccButton large" target="_self" href="http://m.celebritycruises.com/m/home.do"> <span class="text">Explore</span> <span class="pointer"> </span> </a></p>
</div>
</body>
</html>

这是页面的js

// JavaScript文档

// autoplay video
function onPlayerReady(event) {
    event.target.pauseVideo();
}

// when video ends
function onPlayerStateChange(event) {        
    if(event.data === 0) {
        window.location = "http://m.celebritycruises.com/m/home.do";
    }
}

//style Blackberry
window.onload = function() {
    var ua = navigator.userAgent;
    if (ua.indexOf("BlackBerry") != -1 ) {
        document.getElementById("video_page").className = "bb";
    }
};

1 个答案:

答案 0 :(得分:0)

好的,我想出了如何解决它。

我改变了

event.target.pauseVideo();

event.target.stopVideo();

我不知道问题是什么,但iOS 5.1.1似乎永远不会完成自动加载。使用YouTube API中的stopVideo()命令停止进程并显示播放按钮。点击后,它会正常加载。