如何在单击取消按钮时停止/暂停嵌入
How to stop/pause an embedded on clicking a cancel button?
我有一个视频覆盖div打开按钮点击。我在视频上有一个取消按钮,点击应该关闭覆盖以及停止/暂停视频。这是我正在做的-
<html>
<head>
<style>
div#overlay {
display: none;
z-index: 2;
background: #000;
position: fixed;
width: 100%;
height: 100%;
top: 0px;
left: 0px;
text-align: center;
}
div#specialBox {
display: none;
position: fixed;
z-index: 3000;
height: 100%;
width: 100%;
background: #FFF;
color: #000;
}
div#wrapper {
position:absolute;
top: 0px;
left: 0px;
padding-left:24px;
}
.closebtn
{
position: absolute;
top: 0%;
right: 45px;
font-size: 40px;
}
</style>
<script>
function toggleOverlay(){
var overlay = document.getElementById('overlay');
var specialBox = document.getElementById('specialBox');
overlay.style.opacity = .8;
if(overlay.style.display == "block"){
overlay.style.display = "none";
specialBox.style.display = "none";
}
else {
overlay.style.display = "block";
specialBox.style.display = "block";
}
}
function pauseVideo()
{
var vid = document.getElementById('myVid');
vid.pause();
}
</script>
</head>
<body>
<!-- Start Overlay -->
<div id="overlay">
<!-- End Overlay -->
<!-- Start Special Centered Box -->
<div id="specialBox">
<iframe id="myVid" src="https://player.vimeo.com/video/183364240title=0&byline=0&portrait=0" width="100%" height="100%" frameborder="0"></iframe>
<div class="closebtn">
<a href="javascript:void(0)" onclick="toggleOverlay(); pauseVideo()">×</a>
</div>
</div>
<!-- End Special Centered Box -->
</div>
<!-- Start Normal Page Content -->
<div id="wrapper">
<button onmousedown="toggleOverlay()">Apply Overlay</button>
</div>
<!-- End Normal Page Content -->
</body>
</html>
所以,当我点击取消按钮时,我想要关闭覆盖div(正在发生)以及暂停视频。谁能告诉我我哪里错了?
你不能暂停iframe来停止视频在其中运行(dummy):)。由于您使用vimeo链接,所以您将不得不使用vimeo api。要做到这一点,请执行以下操作:
在froogaloop2.js中添加带有vimeocdn的脚本标签,如下所示
<script src="http://a.vimeocdn.com/js/froogaloop2.min.js"></script>
下一步:在视频url中添加api=1 querystring,如下所示:(注意您的视频url缺少?导致视频无法加载)
https://player.vimeo.com/video/183364240?api=1&标题= 0,署名= 0,肖像= 0
最后:将以下代码放入pauseVideo
函数中:
function pauseVideo()
{
var players;
players=$('#myVid');
$f(players[0]).api('pause');
}
那应该能满足你的需要。(注意:对于youtube视频,您可能必须使用youtube api方法和过程)
示例代码:http://codepen.io/Nasir_T/pen/pEmEJE
相关文章:
- 使用clickToggle并在单击另一个元素时关闭元素
- 单击时将焦点更改为元素
- 单击F5时如何停止页面加载
- 通过单击表单中的按钮,在代码生成中使用javascript生成字母数字代码
- 在单击任何位置时隐藏元素,而不检查每次DOM单击
- 单击时暂停音频并更改按钮的图像
- Chrome javascript调试器在超时时暂停,可以't调试单击事件
- 在按钮上单击暂停HTML视频(正在自动播放)
- 单击时播放/暂停,但仅一次
- JS单击事件不适用于暂停CSS动画
- 在单击时暂停并播放 JavaScript 滑块事件
- 单击(jQuery)时暂停setTimeout
- BJQS滑块在单击时暂停
- 音频播放/暂停不同按钮单击Jquery
- 禁用单击Fotorama滑块上的暂停功能
- 暂停鼠标上移/单击,直到$.get完成
- 暂停执行,直到单击javascript按钮
- 当有人单击特定链接时,如何停止或暂停我使用的脚本之一
- 如何在单击取消按钮时停止/暂停嵌入
- 暂停单击事件,直到用户输入