2013-02-17 51 views
8

我有兩個問題。只要將軌道標籤放入視頻元素中,視頻的默認控制器就會顯示出來。我有自定義控件,所以這是相當的問題。切換HTML5視頻中的隱藏式字幕並禁用默認視頻控件

二。我無法找到切換關閉字幕的方法。

HTML:

JS:

var cc = document.getElementById('cc'); 
function cc(){ 
     var video= document.getElementById('media'); 
     var track1 = video.textTracks[0]; 
     var mytrack = document.getElementById('mytrack'); 
     var track2 = mytrack.track; 
     console.log(track1); 
     console.log(track2); 
    } 
    cc.addEventListener('click',cc,false); 
+0

controls = false在你的

回答

10

如果您在<video>標籤移除對controls任何引用應該保持隱藏控件(它們可能會閃爍第一次加載,但一旦視頻被加載,他們將保持隱藏)controls項目是布爾值:如果它存在,那麼他們將顯示,如果它不,那麼他們不會。

顯示和隱藏你需要設置mode的標題爲「顯示」或「隱藏」,如下

<video autoplay loop id="v"> 
    <source src="Video.mp4" type="video/mp4"> 
    <track id="enTrack" src="entrack.vtt" label="English" kind="subtitles" srclang="en" default> 
    HTML5 video not supported 
</video> 
. 
. 
. 
<script> 
. 
v = document.getElementById("v") 
v.textTracks[0].mode = "hidden"; // "showing" will make them reappear 
    // if you want to show the controls 
v.controls = true; 
. 
</script> 

注意因人而異爲不同的瀏覽器有不同的行爲,當談到字幕。這適用於OSX和IE10上的Chrome/Safari(儘管關於Safari和IE的注意事項模式的值爲隱藏「0」,顯示爲「2」,但使用文本設置它們似乎可行。

+0

我沒有任何引用視頻標籤中的控件我試圖設置控件爲false,但沒有實現任何東西 – Batman 2013-02-17 04:33:22

+0

文本軌道無論如何工作完美謝謝 – Batman 2013-02-17 04:42:15

+0

很高興文本軌道工作你有嘗試以編程方式將控件設置爲false什麼OS /瀏覽器組合? – Offbeatmammal 2013-02-17 05:10:49