VideoJS 4.0在iPad上的表现很奇怪

时间:2013-05-13 21:11:00

标签: ios ipad video.js

我只是将我的应用程序升级到新的videojs版本4.0,但它现在不适用于iPad(据我所知,适用于所有其他浏览器)。

4.0皮肤没有出现,API看起来根本不起作用。该视频用作背景,由应用程序中的按钮控制。但是,升级后,视频会导致所有按钮无法点击(如果可以,则无法触摸)。

这是我正在使用的JS。

var $curTime = 0;
var $setPause = "Go";
var $timeOutTime = 1000;

$( '#main' ).on( 'pageshow',function(event){
videojs("HumanBody", {"preload":"metadata","poster":"http://pidcgr.com/lobby/humanbody/vid/poster.png","controls":true}, function(){
    console.log("Initialized");
});

var myPlayer = videojs("HumanBody");
myPlayer.ready(function(){
    myPlayer.src([
      { type: "video/mp4", src: "http://pidcgr.com/lobby/humanbody/vid/bodyapp.mp4" },
      { type: "video/ogg", src: "http://pidcgr.com/lobby/humanbody/vid/bodyapp.ogv" }
    ]);
    setTimeout(function() {
        if($setPause=="Paused") {
            myPlayer.pause();
        }
        else {
            myPlayer.play();
        }
        myPlayer.on('loadedmetadata', function() {
            myPlayer.currentTime($curTime.toFixed(1));
        });
    }, $timeOutTime);
    $(".video-nav").click(function() {
        myPlayer.pause();
        $curTime = myPlayer.currentTime();
        $setPause = "Paused";
    });
    $("a.start-over").click(function() {
        myPlayer.pause();
        $curTime = 0;
        $setPause = "Go";
    });
    myPlayer.on('pause', function() {
        myPlayer.posterImage.show();
    });
    myPlayer.on('ended', function() {
        myPlayer.currentTime(myPlayer.duration()-1+0.99);
        myPlayer.pause();
        myPlayer.posterImage.hide();
    });
    myPlayer.on('error', function() {
        console.log("Error");
    });
    $timeOutTime = 500;
});
});

视频标记如下所示:

<video id="HumanBody" class="video-js vjs-default-skin" width="1024" height="748"></video>

在此处预览网址:http://pidcgr.com/lobby/humanbody/

2 个答案:

答案 0 :(得分:5)

您可以设置一个新的(尚未记录?)选项,它将禁用iPad和Android设备上的默认控件并显示videojs皮肤: customControlsOnMobile

所以设置videojs:

$( '#main' ).on( 'pageshow',function(event){
videojs("HumanBody", {"preload":"metadata","poster":"http://pidcgr.com/lobby/humanbody/vid/poster.png","controls":true, "customControlsOnMobile": true}, function(){
});

问候,菲利普

答案 1 :(得分:0)

该选项在最新版本中已更改为“nativeControlsForTouch”。 对于试图在源代码中找到customControlsOnMobile的人。