JavaScript 切换按钮

标签 javascript css html5-video toggle togglebutton

所以我有一个按钮,它可以切换和显示视频。如果再次单击,它将隐藏它并不断隐藏它。它工作正常,唯一的问题是当你第一次点击它时你必须点击它两次,出于某种原因我似乎无法弄明白。

function togglevid() {
    var e = document.getElementById("movie");
    if (e.style.display == 'none') e.style.display = 'block';
    else e.style.display = 'none';
    if (e.pause == false) e.pause()
    else e.pause()
}
#movie {
    position:absolute;
    top:158px;
    left:470px;
    display:none;
    z-index:10
}
<video controls="" height="400" id="movie" oncontextmenu="return false;"
    width="960">
    <source src="" type="video/mp4">
    Your browser does not support HTML5 video.</video>

<input id="mcodebtn" onclick="togglevid()" type="button" value=
                "">

我认为此错误的原因是我将视频设置为显示:无;默认情况下。

最佳答案

尝试下面的代码,style 属性应该设置为display:none

问题是您正在尝试访问 style 属性,然后访问 display 值。但是第一次运行它时,video 标签没有设置任何 style 属性。

function togglevid() {
    var s = document.getElementById("newcode");
    var e = document.getElementById("movie");
    if (e.style.display == 'none') e.style.display = 'block';
    else e.style.display = 'none';
    if (s.style.display == 'none') s.style.display = 'block';
    else s.style.display = 'none';
    if (e.pause == false) e.pause()
    else e.pause()
}
#movie {
    position:absolute;
    top:158px;
    left:470px;
    display:none;
    z-index:10
}
<video controls="" 
       height="400" 
       id="movie" 
       oncontextmenu="return false;"
       width="960" 
       style="display:none;"><!-- Here we set a default value for style attr-->
    <source src="" type="video/mp4">
    Your browser does not support HTML5 video.</video>

<input id="mcodebtn" onclick="togglevid()" type="button" value=
                "">

关于JavaScript 切换按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32261984/

相关文章:

javascript - 覆盖可见的内部div

javascript - HTML5 视频 : Detecting Bandwidth

javascript - 等待异步函数并 promise 完成

javascript - 在 Markdown 服务器或客户端中格式化? Node js

javascript - 当函数名称是保留字时如何使用 Redux Saga "call"函数以及如何进行链式函数调用?

javascript - 基本旋转和平移 keydown 上的元素

javascript - HTML 对象没有以正确的……顺序显示?

javascript正则表达式只返回字母

HTML5 视频元素 — 替代文本

video - ffmpeg转码为直播流