我使用Javascript& amp;创建了一个视频弹出窗口jQuery,它工作得很完美,设计需要一点工作,但很好,因为它只是一个划痕工作...
我遇到的唯一问题是当我点击关闭按钮时,视频意味着停止,但它会继续在后台运行。这是代码。
HTML:
<body>
<div id="play">
<button>Play Video</button>
<img src="1.jpg" />
<img src="2.jpg" />
<img src="3.jpg" />
<img src="4.jpg" />
</div>
<div id="vid">
<iframe width="640" height="360" src="https://www.youtube.com/embed/VNtYWDpdQ1w?list=PLr6-GrHUlVf96NLj3PQq-tmEB6woZjwEl" frameborder="0" allowfullscreen id="video"></iframe>
<a href="#"><h1 id="close">X</h1></a>
</div>
</body>
CSS:
#video{
position: absolute;
top: 200px;
bottom: 400px;
left: 400px;
right: 400px;
display: none;
}
#close{
font-family: arial;
color: black;
position: absolute;
top: 100px;
left: 250px;
display: none
}
的Javascript / jQuery的:
$(document).ready(function(){
$('#play').click(function(){
$('#video').css('display', 'block');
$('#video').css('position', 'fixed');
$('#close').css('position', 'fixed');
$('#close').css('display', 'block');
$('#play').css('opacity', '0.5');
});
});
$(document).ready(function(){
$('#close').click(function(){
$('#play').data('clicked', 'no');
$('#video').css('display', 'none');
$('#close').css('display', 'none');
$('#play').css('opacity', '1');
});
});
答案 0 :(得分:3)
在一段时间之前我也面临同样的问题。解决方案很简单,需要在id = vid中附加iframe,并在关闭时将其清空。
<div id="vid">
<span id="frame"></span>
<a href="#"><h1 id="close">X</h1></a>
</div>
$(document).ready(function(){
$('#play').click(function(){
$('#frame').html('<iframe width="640" height="360" src="https://www.youtube.com/embed/VNtYWDpdQ1w?list=PLr6-GrHUlVf96NLj3PQq-tmEB6woZjwEl" frameborder="0" allowfullscreen id="video"></iframe>');
$('#video').css('display', 'block');
$('#video').css('position', 'fixed');
$('#close').css('position', 'fixed');
$('#close').css('display', 'block');
$('#play').css('opacity', '0.5');
});
});
$(document).ready(function(){
$('#close').click(function(){
$('#frame').html('');
$('#play').data('clicked', 'no');
$('#video').css('display', 'none');
$('#close').css('display', 'none');
$('#play').css('opacity', '1');
});
});