我正在使用iframe youtube让我在我的网站上嵌入了一个视频。
我也在使用从本页学到的css弹出窗口 http://www.pat-burt.com/web-development/how-to-do-a-css-popup-without-opening-a-new-window/
所以我的html代码看起来像这样
<div id="blanket" style="display:none;"></div>
<div id="popUpDiv" style="display:none;">
<font size="4" color="#ffffff"><a style="color: #ffffff" href="javascript:void(null)" onclick="popup('popUpDiv')">Close</a><br></font>
<iframe width="560" height="315" src="http://www.youtube.com/embed/h3Pb6IyFvfg" frameborder="0" allowfullscreen></iframe>
</div>
<a href="javascript:void(null)" onclick="popup('popUpDiv')" class="more_details">more details</a>
然而一切都按照我想要的方式工作但是如果我将浏览器切换到Internet Explorer或Chrome,当我选择关闭弹出窗口时,视频会继续播放?我做了一些谷歌搜索,发现其他人有同样的问题,但我只能找到不符合预期的代码。
基本上我想在弹出窗口关闭时停止播放视频怎么办?感谢您的帮助
答案 0 :(得分:8)
我之前遇到过同样的问题
我在关闭弹出窗口时删除iframe的src ,当我在jQuery中打开它时将其重新放回。这样,我确定当弹出窗口关闭时,视频不会继续播放。
修改添加了一个例子:
在包含视频网址
<a href="javascript:void(null)" onclick="popup('popUpDiv', 'http://www.youtube.com/embed/NWHfY_lvKIQ')" class="more_details">more details</a>
使用视频网址在您的函数中设置iframe的src
function popup(pPopup, pYt){ //pYt optional
$('iframe').attr('src', pYt);
}
如果要删除源
,请在代码中添加此行$('iframe').attr('src', '');
答案 1 :(得分:1)
你也可以抛弃iframe代码并使用youtube embed。然后在您的javascript事件中,您可以player.pauseVideo();
其中播放器是您的嵌入对象。
使用Youtube播放器API:http://code.google.com/apis/youtube/js_api_reference.html#Playback_controls
答案 2 :(得分:0)
更改帧的显示不会停止视频。当弹出窗口关闭时,你必须删除iframe元素。