所以我有一个显示YouTube视频的模式。问题是,当我关闭模态时,我仍然听到视频播放。我看过其他解决方案但它们似乎没有用。请注意,我无法将ID应用于iframe,因为iframe是动态创建的。无论如何,当我关闭模式时,是否使用JavaScript或JQuery停止或暂停视频?
我的代码如下:
<script>
(function($){
$(document).ready(function() {
$('.b-close').on('click', function() {
$('iframe').get(0).stopVideo();
});
})(jQuery);
</script>
<div id="element_to_pop_up" attrId="20">
<a class="b-close">x</a>
<h3 class="pop-hd">Title</h3>
<div class="pretty-embed play" data-pe-videoid="nGSfaMxCu-U" data-pe-fitvids="true" data-pe-allow-fullscreen="false">
<iframe width="330" height="186" style="border:none;" src="//www.youtube.com/embed/nGSfaMxCu-U?autoplay=1&rel=1"></iframe>
</div>
</div>
答案 0 :(得分:0)
如果你的代码没有在那里运行,你无法控制iframe中嵌入的视频(当然不包括YouTube自己的iframe)。
让它停止的最简单的解决方案是简单地删除iframe。
$('iframe').get(0).remove();
当 打开 时,无论是什么机制都放在首位,如果访问者需要再次重新打开同一个面板,模态会再次将其重新放回。
答案 1 :(得分:0)
这很简单。请关注,
<iframe id="vidstop" width="100%" height="96%"
src="">
</iframe>
btn.onclick = function() {
$("#vidstop").attr('src','https://www.youtube.com/embed/....');
}
并点击iframe之外,
window.onclick = function(event) {
if (event.target == modal) {
$("#vidstop").attr('src','');
}
}