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>
答
人们似乎可以设置一个新的(?没有记录)选项,这将禁用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(){
});
问候,菲利普
答
该选项在最新版本中已经更改为 'nativeControlsForTouch'。 有人试图在源代码中找到customControlsOnMobile。
这对菲利普来说是一个巨大的帮助。让我的自动播放或恢复播放功能起作用仍然是一个窍门,但至少这是可用的!谢谢! – Erich 2013-05-17 18:47:52