VideoJS 4.0在iPad上奇怪的行为

问题描述:

我只是升级我的应用程序到新的videojs版本4.0,但它现在不适用于iPad(可以工作在所有其他浏览器上,据我所知)。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/

人们似乎可以设置一个新的(?没有记录)选项,这将禁用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(){ 
}); 

问候,菲利普

+0

这对菲利普来说是一个巨大的帮助。让我的自动播放或恢复播放功能起作用仍然是一个窍门,但至少这是可用的!谢谢! – Erich 2013-05-17 18:47:52

该选项在最新版本中已经更改为 'nativeControlsForTouch'。 有人试图在源代码中找到customControlsOnMobile。