2013-05-13 149 views
1

我只是升級我的應用程序到新的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/

回答

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(){ 
}); 

問候,菲利普

+0

這對菲利普來說是一個巨大的幫助。讓我的自動播放或恢復播放功能起作用仍然是一個竅門,但至少這是可用的!謝謝! – Erich 2013-05-17 18:47:52

0

該選項在最新版本中已經更改爲 'nativeControlsForTouch'。 有人試圖在源代碼中找到customControlsOnMobile。