我試圖讓使用HTML5視頻功能在現代瀏覽器的播放列表。製作HTML5視頻播放列表的最佳方式?
我迄今發現的唯一方法是刪除視頻標籤,然後用不同的源像下面再追加吧..
$("second video link").click (function(){
$("#video wrapper").remove();
$("#video wrapper").append(" new video tags ");
});
我認爲必須有一個更好的辦法...
我試圖讓使用HTML5視頻功能在現代瀏覽器的播放列表。製作HTML5視頻播放列表的最佳方式?
我迄今發現的唯一方法是刪除視頻標籤,然後用不同的源像下面再追加吧..
$("second video link").click (function(){
$("#video wrapper").remove();
$("#video wrapper").append(" new video tags ");
});
我認爲必須有一個更好的辦法...
答案取決於你喜歡什麼樣的方式以及你想要爲視頻提供哪些瀏覽器。如果您通過源子元素提供多個源,則IE9會在video.src()函數中失敗。如果您只需要一個瀏覽器即可運行,請檢查caniuse.com的webm和mp4以查看哪個瀏覽器支持哪個編解碼器。如果你發現你需要多種編解碼器爲觀衆同時使用mp4-和WebM,只有瀏覽器,你將不得不做.canPlayType()檢查使用的.src()函數之前,並消除會失敗源(雖然這張支票也不是防彈的)。 Android 2.2(或者是2.1,請改正我)根本不知道funciotn。一些Mac OSX瀏覽器有類似的問題afaik。
底線:您應該使用canPlayType()組合來過濾錯誤的來源,然後使用數組或其他可排序列表來抓取下一個視頻源,並在視頻觸發「已結束」事件後進行設置元素使用src()函數。我還希望在更改源代碼時設置視頻元素的type屬性以規避某些瀏覽器的怪癖。
可能的類型有:支持MP4和M4V文件視頻/ MP4; webm文件的視頻/ webm;視頻/ ogg爲ogv文件;無論是通過某種形式的服務器端腳本提供的類型或您在JS文件擴展名,然後做一個開關(){...}或其他如()...
你可以很容易地得到擴展通過
var sourceExt = (sourceString.split(".")).pop();
其中sourceString是包含源
的網址還應該檢查瀏覽器的規格,以符合他們的要求影片的變量。 iOS版的實例需要mp4文件與基線輪廓
編碼是不是很不夠的,只是改變src屬性? – powerbuoy 2011-12-24 23:04:47
您需要修改SRC或重新
@powerbuoy //我還沒有嘗試過。我會嘗試。 – Moon 2011-12-27 20:46:31