0
我使用的是video.js,我有一個頁面,其中一個視頻區域在點擊某些縮略圖時必須更改。爲此,我使用以下代碼:Safari和IE瀏覽器的Video.js問題
<video id="div_video" class="video-js vjs-default-skin" controls preload="none" width="560" height="315" poster="<?=ROOT?>media/videos/testvid_01.jpg" data-setup="{}">
<source id="video_mp4" src="<?=ROOT?>media/videos/testvid_01.mp4" type="video/mp4" />
<source id="video_ogg" src="<?=ROOT?>media/videos/testvid_01.ogv" type="video/ogg" />
<source id="video_webm" src="<?=ROOT?>media/videos/testvid_01.webm" type="video/webm" />
</video>
縮略圖與「縮略圖」類的正常鏈接。要更改視頻,我使用以下代碼:
$(function(){
$(".thumbnail").click(function() {
var $target = "testvid_"+$(this).attr("id");
var $content_path = "<?=ROOT?>media/videos/";
var $vid_obj = _V_("div_video");
$("img.vjs-poster").hide();
$vid_obj.ready(function() {
$vid_obj.pause();
$("video:nth-child(1)").attr("src",$content_path+$target+".mp4");
$("video:nth-child(1)").attr("src",$content_path+$target+".ogv");
$("video:nth-child(1)").attr("src",$content_path+$target+".webm");
$("img.vjs-poster").attr("src",$content_path+$target+".jpg").show();
$(".vjs-big-play-button").show();
$("#div_video").removeClass("vjs-playing").addClass("vjs-paused");
$vid_obj.load();
$vid_obj.play();
});
});
$("#01").click();
});
ROOT是這裏的完整域名。
現在,這完美適用於Firefox和Chrome。視頻開始自動播放,當點擊其中一個縮略圖時,它會變成不同的視頻。完善!
但是,它在Safari(5.1.7)和IE(9)中不起作用。在Safari中,它只是無限地顯示加載圖標,在IE中它根本不啓動。當我刪除$(「#01」)。click();,第一個視頻(默認是有的話)可以工作,但是當點擊任何縮略圖時,它只會再次顯示加載圖標。
在IE上,它根本不開始播放。當使用兼容模式時,它開始播放,但只播放聲音。
有人知道這裏有什麼問題嗎?謝謝!