为HTML5视频添加字幕

时间:2020-10-17 12:38:17

标签: javascript html jquery css html5-video

我使用JavaScript构建了自定义HTML5视频播放器,并使用以下js代码隐藏了本机控件:

var video = document.getElementById("video");
video.controls = false;

然后我自定义控件(播放-暂停-全屏...),一切正常。 我的问题是,我实现了如下所示的代码:

<track label="English" kind="subtitles" src="sub/vid_sub.vtt" srclang="en">

字幕没有显示,所以我发现隐藏控件的js代码也隐藏了标签,我试图找到一种方法来禁用除标签之外的所有本机控件,但是我做不到。 如果有什么办法可以解决此问题,请告诉我。

1 个答案:

答案 0 :(得分:2)

如果您将默认添加到html轨道,则如果您要操作多个字幕,它将默认显示。您可以查询全部选中它们,然后显示一个被点击的用户,如下所示。

for (var i = 0; i < video.textTracks.length; i++) {
    if (video.textTracks[i].language == 'en') {
        video.textTracks[i].mode = 'showing';
 }

如果要隐藏它,如下所示。

track.mode="hidden";