2012-02-07 40 views
0

我有一個包含四個VIDEO元素的網頁。我知道他們的元素甚至不會開始加載任何元數據,除非我明確觸發了他們的觸摸事件。我可以在BUTTON元素上的觸摸事件上掛接事件處理函數,以便調用所有四個VIDEO元素上的「play」方法嗎?使用iOS平臺在網頁上加載多個視頻

我的意思是沿着這些路線的東西:

$b1.bind("touchstart", function (e) { 
    $v1.get(0).play(); 
    $v1.get(0).pause(); 
    $v2.get(0).play(); 
    $v2.get(0).pause(); 
    $v3.get(0).play(); 
    $v3.get(0).pause(); 
    $v4.get(0).play(); 
    $v4.get(0).pause(); 
}); 

當我嘗試這四個獨立的QuickTime窗口與全屏視頻打開。這不是我想要的效果,但至少我可以將所有四個人都綁定到處理程序。但問題是,只有$ v4實際上開始加載任何東西,而其他三個顯然永遠不會開始加載。

回答

-1

你檢查了this了嗎?將您的代碼設置爲:<video preload="automatic" />並且它應該預加載。

+0

抱歉,但多數民衆贊成只有Safari瀏覽器,桌面部分。 – 2012-02-08 10:25:04

+0

@Jorn Berkefeld沒有看到... – 0x60 2012-02-09 23:30:28

0

您無法一次啓動多個視頻。每當您在iOS上啓動視頻時,當前正在運行的視頻都會停止。這是對所有移動蘋果設備的性能限制。基於同樣的原因,preload屬性與當前iOS設備無關。

我猜你想要視頻內聯?然後添加webkit-playsinline作爲一個屬性對每個<video>元件:

<video src="myvideo.mp4" webkit-playsinline controls>

這樣你可以安排4視頻元素彼此相鄰,並使用本地視頻的控件(例如,以允許以後切換到純全屏) 。如果您想實現自己的控件,請省略controls屬性。

PS:在0X60的鏈接跟進,你可以找到一個名爲iOS-Specific Considerations