javascript - 使用 JavaScript 打开模态框时如何播放视频?
问题描述
我一直在为我的网站设置一个视频页面,我正试图通过使用 Javascript 使它更加流畅!......不幸的是,我完全不擅长 Javascript!好的,这是我的问题:
我已经设法使用 HTML 和 CSS 制作了一个带有打开动画的模态框,现在我想要发生的是,只要我点击视频缩略图,视频开始播放,当我点击关闭按钮时,视频停止播放或暂停,我已经设法使用“onclick”命令使其工作......但它只适用于一个视频!
我已经尝试设置具有多个 id 和多个 JS 变量的视频,但它们都不起作用,在某些时候我做到了,所以即使我只打开了一个模态框,所有视频也立即开始播放......哈哈
这是我当前代码的片段:
<!-- Open the Lightbox with these images -->
<div class="row">
<div class="column">
<img src="tsr/teaserthumbnail.png" onclick="openModal();currentSlide(1);playVid()" class="hover-shadow">
<img class="play-btn" src="/assets/play-btn.png" onclick="openModal();currentSlide(1);playVid()">
</div>
<div class="column">
<img src="tsr/e3thumbnail.png" onclick="openModal();currentSlide(2);playVid()" class="hover-shadow">
<img class="play-btn" src="/assets/play-btn.png" onclick="openModal();currentSlide(2);playVid()">
</div>
</div>
<!-- Modal/Lightbox Content -->
<div id="myModal" class="modal">
<span class="close cursor" onclick="closeModal();pauseVid()">×</span>
<div class="modal-content">
<div class="mySlides">
<center><video id="myVideo" width="100%" controls src="tsr/TSR_TeaserMovie_PEGI_ENG_1527074582.mp4"></video></center>
</div>
<div class="mySlides">
<center><video id="myVideo" width="100%" controls src="tsr/TSR_E3_Trailer_UK_PEGI_1528474075.mp4"></video></center>
</div>
<script>
// Open the Modal
var vid = document.getElementById("myVideo");
function openModal() {
document.getElementById("myModal").style.display = "block";
}
function playVid() {
vid.play();
}
// Close the Modal
function closeModal() {
document.getElementById("myModal").style.display = "none";
}
function pauseVid() {
vid.pause();
}
如果您需要更多上下文,这是网页本身: https ://sonic.retro-media.net/videos/tsr.php
我真正需要的是当我单击缩略图时开始播放每个视频,或者当我关闭模式/灯箱时暂停。
提前致谢!
解决方案
火狐 - https://support.mozilla.org/en-US/kb/block-autoplay
Chrome - https://developers.google.com/web/updates/2017/09/autoplay-policy-changes
autoplay
默认情况下,所有主要浏览器都将关闭(更像是已经关闭),除非用户更改浏览器自动播放设置。
推荐阅读
- html - 如何自动将我的网站翻译成用户的语言?
- macos - Android 目标:未安装 Cordova 要求
- json - 由于子类型错误,无法从 Internet 加载 json 数据:列表
不是类型 Map - c# - 在地图图像上显示图钉
- outlook - “新 Outlook”的 Automator / Applescript - “选定对象”不再起作用
- flutter - 如何使用飞镖语言在字符串中搜索罗马数字?
- php - 试图访问对象的数据,说无法访问
- angular - 为什么打字稿在我的 IDE 中给我一个错误,说 Observable 上的属性不存在但显示它们存在?
- mysql - 没有中间表的sql连接(旧数据库)
- javascript - 如何从我的网站中的表单接收消息