javascript - Firefox 不会切换媒体标签中的控件

标签 javascript html html5-video

我正在构建一个自定义 html5-mediaplayer。我使用自定义控件,因此当我创建媒体元素(使用 JS)时,我首先将其设置为controls = false;当视频全屏显示时,我想将控件的值更改为 true,以便它们仅以全屏模式显示。然而,该对象仍处于 false 状态。似乎一旦设置好控件就无法更改。

我错过了什么吗?我怎样才能改变这个值?我尝试过的所有其他浏览器都可以很好地做到这一点(Chromium、Opera、Safari - Linux 和 MacOS)。我发现的所有文档都说这应该可行。

有问题的代码是这样的,两者都不起作用:

function fullscreen()
{
 document.getElementById("cbPlayer_fullscreen").blur(); //fullscreen-button
 var currentMedia = document.getElementById(currentMediaId);

 currentMedia.removeAttribute("controls");
 //currentMedia.controls = true;
 currentMedia.setAttribute("controls","controls");

 // go full-screen
 if (currentMedia.requestFullscreen) { currentMedia.requestFullscreen(); }
 else if (currentMedia.msRequestFullscreen) { currentMedia.msRequestFullscreen(); }
 else if (currentMedia.mozRequestFullScreen) { currentMedia.mozRequestFullScreen(); }
 else if (currentMedia.webkitRequestFullscreen) { currentMedia.webkitRequestFullscreen(); }
}

控制台中没有错误。

感谢您的任何提示!

克里斯

...哦,你可以在这里看到这个东西:https://musicchris.de/?page=media

最佳答案

更改您的 html 以实际调用 fullscreen() 函数:

<a onclick="fullscreen()" class="cbPlayer_fullscreen" href="javascript:">
   <img style="box-shadow: 0px 0px 2px 1px gray;" id="cbPlayer_fullscreen" class="cbPlayer_mediacontrols cbPlayer_fullscreen" src="cbplayer/pics/fullscreen.png" alt="fullscreen" title="fullscreen">
</a>

我还建议你将 js 移动到一个单独的文件:)

关于javascript - Firefox 不会切换媒体标签中的控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33601063/

相关文章:

javascript - 通过 HTML 和 Javascript 进行音频流和录音

html5-video - 如何修复 412(前提条件失败)错误 HTML5 视频标签

JavaScript 追加以及创建和添加属性

php - 每隔几秒刷新一次获取服务器代码并更新表单元素

javascript - 将表中的多行保存到后端 SAPUI5

javascript - YouTube api 事件未使用 adobe muse 触发

javascript - Webview 上的自动启动 html5 视频不适用于 Android 4.2.2

javascript - 替换后字符提交错误

javascript - 在整个页面上工作的水平滚动 jquery

jquery - 在DIV现有内容左侧添加HTML