【发布时间】:2010-11-23 06:15:18
【问题描述】:
我使用在 jQuery 模型窗口中打开一个 YouTube 视频。在 IE、Safari、Chrome 中,当我们关闭覆盖时,YouTube 视频不会停在那里,而是继续在后台播放,然后与其他视频产生问题。
我的示例代码是
<div id="boxes">
<div class="window" id="dialog" style="top: 11px; left: 323.5px; display: block;">
<div align="right" class="clsbtn"><a class="close" href="#">Close</a></div>
<div>
<object width="580" height="360">
<param name="movie" value="http://www.youtube.com/v/eiz2vkSwSeQ&hl=en_US&fs=1&border=1"></param>
<param name="allowFullScreen" value="true"></param>
<param name="allowscriptaccess" value="always"></param>
<embed src="http://www.youtube.com/v/eiz2vkSwSeQ&hl=en_US&fs=1&border=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="580" height="360"></embed>
</object>
</div>
</div>
<div class="window" id="dialog" style="top: 11px; left: 323.5px; display: block;"></div>
</div>
<script>
$('.window .close').click(function (e) {
//Cancel the link behavior
e.preventDefault();
$('#mask').hide();
$('#mask').css("opacity",0);
$('.window').hide();
});
$('#mask').click(function () {
$('#mask').css("opacity",0);
$(this).hide();
$('.window').hide();
});
</script>
当我单击缩略图图像时,叠加层将打开,相应的视频将自动播放。但是当我们关闭叠加层时,我不知道如何停止视频。
【问题讨论】:
-
O/T 你有两个
div#dialog是故意的吗? -
将
object保存到 js 变量中。然后,当您打开模式时,使用html()添加它,当有人关闭模式时,您使用remove()。这就是我在一个有模态视频的网站上所做的。比尝试使用 YTstopVideo()更好,谁知道 Google 什么时候会改变这一点。
标签: jquery jquery-ui jquery-plugins jquery-selectors