2013-05-05 31 views
0

当我在ie 10中隐藏iframe的fancybox时,fancybox消失,iframe陷入困境。 Fancybox版本:2.1.4。 我的HTML:fancybox2即10,iframe不会消失

<ul class="gallery_new"> 
    <li id="104" class="video"> 
     <span>title</span> 
     <a href="images/gallerys/kids/big/wipeout2.jpg" class="fancybox"> 
      <img src="images/g2allerys/kids/thumbnails/wipeout2_thumb.jpg"> 
     </a> 
     <a class="showVideo" href="#video104"></a> 
    </li> 
</ul> 

<div style="display:none" id="video104"> 
    <iframe width="425" height="355" src="http://www.youtube.com/embed/bYS2hrj9HzI" frameborder="0" allowfullscreen=""></iframe> 
</div> 

而且JS是:

$("ul.gallery_new > li > a.fancybox").fancybox({ 
     openEffect : 'elastic', 
     closeEffect : 'elastic', 

     helpers : { 
      title : { 
       type : 'inside' 
      } 
     } 
    }); 

    $("ul.gallery_new > li > a.showVideo").fancybox(); 

回答

0

我想是不是有内联iframes,除非绝对必要,但在你的情况,我不这么认为一个好主意。

你可以删除你的隐藏内嵌容器id="video104"和修改HTML到YouTube视频一样,直接链接:

<a id="video104" class="showVideo" href="http://www.youtube.com/embed/bYS2hrj9HzI">show video</a> 

然后使用这个脚本:

$("a.showVideo").fancybox({ 
    type: "iframe", 
    width: 425, 
    height: 355, 
    fitToView: false 
}); 

这样做,您的视频会只有在需要时才叫。这也将有助于改善您的网页加载。

JSFIDDLE

注意

<a id="video104" class="showVideo" href="http://www.youtube.com/embed/bYS2hrj9HzI?autoplay=1">show video</a> 
:您可以通过在URL中添加 ?autoplay=1作为尾随参数就像打开视频的自动播放模式