单击“X”按钮时如何关闭弹出窗口和停止视频

肉毒素

干杯伙计们,我会从一开始就提到我是这个世界的新手,我希望你能就以下问题提供一些帮助:

我有一个按钮。单击时,按钮会打开一个弹出窗口并自动播放位于弹出窗口中的视频。我想要做的是以下内容:

当用户单击按钮时,弹出窗口将触发并且视频将自动播放。当用户单击关闭“X”按钮时,弹出窗口应该关闭并且视频应该停止/暂停。

我有以下代码:

HTML

          <div class="video-button-container">
            <img src="media/video-bg.png">
            <a href="#" onclick="toggle();">
              <img src="media/play.png" class="play">
            </a>
          </div>

          <div class="video-container">
            <img src="media/close.png" class="close" onclick="close();">
            <video src="media/video.mp4" controls="true" class="video"></video>
          </div>

CSS

.video-button-container {
  position: absolute;
  top: 70px;
  right: 70px;
}

.play {
  position: absolute;
  top: 25%;
  right: 35%;
}

.video-container {
  position: absolute;
  right: 0;
  top: 0;
  z-index: 10000;
  background: rgba(0, 0, 0, 0.25);
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  visibility: hidden;
  opacity: 0;
}

.video-container.active {
  visibility: visible;
  opacity: 1;
}

.video-container video {
  position: relative;
  max-width: 900px;
  outline: none;
}

.close {
  position: absolute;
  top: 80px;
  right: 20px;
  cursor: pointer;
  max-width: 32px;
}

@media (max-width: 991px) {
  .video-container video {
    max-width: 90%;
  }
}

JS

      var videoElem = document.querySelector(".video-container video");
      var trailerElem = document.querySelector(".video-container")

      function toggle() {
        trailerElem.classList.add("active");
        videoElem.play();
        videoElem.currentTime = 0;
      }

      function close() {
        trailerElem.classList.remove("active");
        videoElem.pause();
        videoElem.currentTime = 0;
      }

有人可以告诉我,我做错了什么吗?祝你今天过得愉快!

用户2495207

close.png元素没有绑定任何事件,因为它不在visible加载页面时,因此您必须在加载后绑定事件。

      /* function close() {
        trailerElem.classList.remove("active");
        videoElem.pause();
        videoElem.currentTime = 0;
      }
      */
      window.onload = function () {
        document.getElementsByClassName("close")[0]
          .addEventListener("click", function (e) {
            trailerElem.classList.remove("active");
            videoElem.pause();
            videoElem.currentTime = 0;
          });
      };

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

单击时关闭弹出窗口

单击背景时如何关闭离子弹出窗口

单击检查器窗口时如何避免关闭Firefox Web扩展弹出窗口

当我关闭弹出窗口时,YouTube视频停止播放

在弹出式窗口外单击时如何关闭它?

如何获得模式弹出窗口以在单击时关闭

单击关闭按钮,关闭弹出窗口

如何单击关闭或确认按钮或单击背景以关闭弹出窗口

单击传单弹出窗口时如何停止点击传播?

单击窗口的“ X”(关闭)按钮时停止任何循环

当我单击包含按钮的l.divicon自定义html时如何停止弹出窗口的打开

单击按钮时未显示弹出窗口

单击HTML中的按钮时如何显示弹出窗口

当我单击evrywhere时,如何关闭jQuery弹出窗口

鼠标单击弹出窗口的外框时如何防止弹出窗口关闭

取消javascript按钮时关闭弹出窗口。

单击关闭时关闭弹出窗口和其他脚本

在Google Chrome和Internet Explorer中单击弹出窗口的关闭按钮后,为什么youtube视频在后台运行?

关闭小框,在弹出窗口之外单击时弹出

当仅单击html中的按钮时,如何关闭弹出窗口

如何使关闭X按钮在弹出窗口上工作

仅在按“取消”按钮时如何关闭模式弹出窗口?

如何使用触发按钮关闭弹出窗口

如何仅通过单击关闭弹出窗口?

当单击其中的按钮时,如何不关闭 xtk:SplitButton 的自定义弹出窗口?

BootstrapVue:如何在单击按钮时关闭弹出窗口/表单

关闭弹出窗口和设置按钮标签

单击子组件时关闭弹出窗口

单击按钮时如何从确认弹出窗口中删除项目