2012-07-23 62 views
2

我与YouTube视频遇到的问题是,右上角的“关闭x”按钮不在YouTube视频之上。由于某种原因,它卡在它们下面。我已经在所有浏览器中试过,看看它是不是IE浏览器问题,但它似乎正在所有YouTube视频上发生。Fancybox关闭按钮不在YouTube视频之上

我也进入了.css,并将z-indext更改为如此疯狂的高数以查看它是否可以修复但没有运气,有没有人遇到过这个问题?它似乎只与YouTube视频隔离。

回答

1

@ complex857是正确的,你需要改变wmode设置(以opaque)的YouTube视频的。

最好的办法是:

1)。从这里抓取fancybox(和助手)的最新版本https://github.com/fancyapps/fancyBox/tree/master/source

2)。除了你的正常的fancybox CSS和JS文件,添加的fancybox媒体帮手js文件等(检查自己的路):

<script type="text/javascript" src="fancybox2.0.6/helpers/jquery.fancybox-media.js"></script> 

3)。这个新版本允许您通过您的自定义脚本传递特定参数到YouTube,如:

$(document).ready(function(){ 
    $(".fancybox").fancybox({ 
     // other API options here 
     padding: 0, // optional 
     // set helpers media 
     helpers : { 
     media : {} 
     }, 
     // NEW youtube media settings 
     youtube : { 
     autoplay : 0, // 1 = will enable autoplay 
     wmode  : 'opaque' 
     } 
    }); // fancybox 
    }); // ready 

注意:这是对的fancybox v2.0.6 +

+0

如何从github下载单个文件? – 1tufgt 2012-07-24 11:44:25

+0

右键单击 - >另存为(另存链接为) – JFK 2012-07-24 19:23:16

2

这是因为YouTube使用CSS的习惯方面的z-index值与默认的窗口模式下的Flash播放器(参数名称是的wmode)

当嵌入的YouTube的iframe中,的wmode =不透明参数添加到URL(的wmode =透明也可以工作),所以它看起来就像这样:

<iframe width="420" height="315" src="http://www.youtube.com/embed/<youtbue_id>?wmode=opaque" frameborder="0" allowfullscreen></iframe> 
+0

嗯,我不是嵌入视频。我只是通过媒体助手来抓取youtube网址以在fancybox内部使用。 – 1tufgt 2012-07-24 11:38:43