js可以做出有取消键的弹窗视频吗
时间: 2024-04-02 14:37:37 浏览: 79
JS实现可拖曳、可关闭的弹窗效果
可以使用 JavaScript 和 CSS 来实现这个功能。下面是一个实现有取消键的弹窗视频的示例代码:
```html
<!DOCTYPE html>
<html>
<head>
<title>弹窗视频示例</title>
<style>
/* 蒙层样式 */
.overlay {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: rgba(0, 0, 0, 0.5);
z-index: 999;
display: none;
}
/* 弹窗样式 */
.modal {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 640px;
height: 360px;
background-color: #fff;
border-radius: 5px;
padding: 20px;
box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}
/* 视频样式 */
.video {
width: 100%;
height: 100%;
object-fit: cover;
}
/* 关闭按钮样式 */
.close {
position: absolute;
top: 10px;
right: 10px;
width: 30px;
height: 30px;
background-image: url('cancel.png'); /* 取消键图片 */
background-size: cover;
cursor: pointer;
}
</style>
</head>
<body>
<!-- 视频播放按钮 -->
<button id="play_button">播放视频</button>
<!-- 蒙层和弹窗 -->
<div class="overlay">
<div class="modal">
<video class="video" src="video.mp4"></video>
<div class="close"></div>
</div>
</div>
<script>
// 获取元素
const overlay = document.querySelector('.overlay');
const modal = document.querySelector('.modal');
const video = document.querySelector('.video');
const close = document.querySelector('.close');
const playButton = document.querySelector('#play_button');
// 点击播放按钮,显示弹窗和视频
playButton.addEventListener('click', function() {
overlay.style.display = 'block';
modal.style.display = 'block';
video.play();
});
// 点击关闭按钮或蒙层,隐藏弹窗和视频
function hideModal() {
overlay.style.display = 'none';
modal.style.display = 'none';
video.pause();
}
close.addEventListener('click', hideModal);
overlay.addEventListener('click', hideModal);
// 阻止点击弹窗时隐藏弹窗
modal.addEventListener('click', function(event) {
event.stopPropagation();
});
</script>
</body>
</html>
```
在上面的代码中,我们使用了一个蒙层和一个弹窗来实现弹窗视频的效果。点击播放按钮时,会显示蒙层和弹窗,并且开始播放视频;点击关闭按钮或蒙层时,会隐藏弹窗和视频。我们还可以阻止点击弹窗时隐藏弹窗,这样用户就可以在弹窗中看完整个视频。
阅读全文