3

我的最终目标是在 iDevices 上查看我的网站,点击图片链接,全屏播放视频,并在视频完成后重定向到另一个网页。我愿意接受任何实现我目标的解决方案,即使这意味着废弃我拥有的代码。

这是我迄今为止最好的尝试:这是我当前的测试站点

我正在关注这个stackoverflow帖子

我对笔记本电脑上的结果感到满意[编辑适用于 Chrome,但不适用于 FF 16.0.1 叹息我不知道了),但我目前无法单击图像在我的 iDevices(ipad1 和 iphone4)上播放视频. 我花了几个小时试图通过研究、反复试验来实现这一目标,但没有成功。

这是我正在使用的代码:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width; initial-scale=1.0" />
<meta name="description" content="" />
<title>test</title>

<script type="text/javascript">

    function videoEnd() {
        var video = document.getElementById("video");
        video.webkitExitFullScreen();
        document.location = "http://www.atxcloud.com/wp-content/uploads/Panos/beerdiaries/jk5%20all/build.html";
    }

    function playVideo() {
        var video = document.getElementById("video");
        video.addEventListener('ended', videoEnd, true);
        video.webkitEnterFullScreen();
        video.load();
        video.play();
    }

</script>
</head>
<body>
<video id="video" poster="http://www.atxcloud.com/wp-content/uploads/Panos/beerdiaries/RnD/image.png" onclick="playVideo();">
    <source src="http://www.atxcloud.com/wp-content/uploads/Panos/beerdiaries/RnD/video.mp4" type="video/mp4" />
</video>
</body>
</html>
4

1 回答 1

1

如果浏览器不支持全屏 API (http://caniuse.com/#feat=fullscreen),则可能会在您的 playVideo 函数中引发错误。试试这个修改:

function videoEnd() {
    var video = document.getElementById("video");
    if(video.webkitExitFullScreen) video.webkitExitFullScreen();
    document.location = "http://www.atxcloud.com/wp-content/uploads/Panos/beerdiaries/jk5%20all/build.html";
}

function playVideo() {
    var video = document.getElementById("video");
    if(video.webkitEnterFullScreen) video.webkitEnterFullScreen();
    video.load();
    video.play();
}

<video id="video" poster="http://www.atxcloud.com/wp-content/uploads/Panos/beerdiaries/RnD/image.png" onclick="playVideo();" onended="videoEnd();">
<source src="http://www.atxcloud.com/wp-content/uploads/Panos/beerdiaries/RnD/video.mp4" type="video/mp4" />

于 2013-01-24T17:41:02.953 回答