javascript - 如何让视频在暂停时淡出 - HTML

标签 javascript html css

所以我刚刚学习网页设计,现在我正在努力嵌入符合要求的视频:

  • 最初褪色(变暗)。
  • 鼠标悬停时取消淡出/变亮至正常状态。
  • 播放视频时,不要褪色。

希望这是有道理的。我的前两个部分工作正常,但是当我不知道如何避免它在播放时变暗时。

我的 HTML 的一部分是:

<div class="paused"> 
    <video class="video" id="video1" width="720" onclick="playPause(0)" loop>
        <source src="video.webm" type="video/webm">
        Your browser does not support HTML5 video.
    </video>
</div> 
<script> 
    var videos = [document.getElementById("video1"), document.getElementById("video2")];

    function playPause(num) {
        if (videos[num].paused) {
            videos[num].play(); }
        else {
            videos[num].pause(); }
    }

我的 CSS 是:

div.paused {
    display: inline-block;
    background: black;
    padding: 0;
}

div.paused video {
    display: block;
    opacity: 0.4;

    -webkit-transition: all 0.5s linear;
    -moz-transition: all 0.5s linear;
    -ms-transition: all 0.5s linear;
     -o-transition: all 0.5s linear;
     transition: all 0.5s linear;
}

div.paused:hover video {
    opacity: 1;      
}

最佳答案

您需要在包含的 div 上切换“暂停”类。您可以在 playPause 函数末尾执行此操作:

videos[num].parentElement.classList.toggle('paused');

这是原生 DOM,仅支持较新的浏览器(对于 classList );你可以在 jQuery 中做同样的事情,例如:

$(videos[num]).parent().toggleClass('paused');

关于javascript - 如何让视频在暂停时淡出 - HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32387084/

相关文章:

android - 媒体查询和 Android 设备

html - Bootstrap 菜单列表项下拉列表不是按钮

Javascript 文件崩溃并转换为 '' NUL NUL NUL"notepad++

javascript - firebase 嵌套对象返回 null - javascript

javascript - 通过回调强制异步打印顺序

javascript - React 不渲染 css 样式

javascript - 如何为嵌套异步调用创建 Promise

java - 我应该如何处理 JSoup 中删除的元素?

javascript - 如何设置Frameset的固定宽度和居中对齐?

javascript - 导航菜单不适用于移动设备