在IE8中通过javascript删除嵌入的youtube视频时出现黑屏

black screen when removing an embedded youtube video by javascript in IE8

本文关键字:视频 youtube IE8 javascript 删除      更新时间:2023-09-26

我使用这个代码让用户在我正在建设的网站上嵌入youtube视频:

function BuildYoutubePlayer(youtubeVideoId, width, height) {
    youtubePlayer = "<iframe ";
    youtubePlayer += "width='"" + width + "'" ";
    youtubePlayer += "height='"" + height + "'" ";
    youtubePlayer += "src='"http://www.youtube.com/embed/" + youtubeVideoId + "'"&amp;wmode=transparent ";
    youtubePlayer += "frameborder='"0'" allowfullscreen>";
    youtubePlayer += "</iframe>";
    return youtubePlayer;
}

这个嵌入将在一个层作为灯箱弹出,当用户关闭这个弹出,视频从html中删除,但我得到一个黑色的全屏只是在IE8上,我找不到任何原因,我试着嵌入youtube视频和删除它,它工作得很好,所以肯定我错过了一些东西。请建议。

我通过隐藏iFrame来解决这个问题,然后删除它,同时删除父弹出框。
所以我写$('iframe').hide();然后是$('myContainerPopup').remove();

我只在IE8和youtube视频上遇到这个问题,没有在IE7上测试,但在所有其他浏览器上都工作得很好

我使用以下代码:

$(document).ready(function() {
$('.popup-gallery').magnificPopup({
    callbacks: {
        open: function() {$('iframe').hide();},
        close: function() {$('iframe').show();}
    }   
});

});