2013-03-26 34 views
0

我在网站上使用fancybox制作this test page,在PC上的所有Mac浏览器,iOS和非IE浏览器上均可正常使用。最新的Windows 8上的IE也很好。但XP上的IE8,7和6不会在页面上显示透明覆盖图或弹出框阴影,并且弹出窗口下的页面上的链接仍可点击(我不想)。 (注意,测试页面上的弹出式图像不一定是正确的最后一个 - 没关系)。Fancybox覆盖不存在于旧IE浏览器

也许我已经搞乱了js的某处(除了能够改变非常基本的配置,我在js中没有专业知识)。我注意到fancybox演示页面在较老的IE中工作正常。

我不喜欢老式IE中的盒子阴影,但我需要叠加层的模态行为。

任何指向我出错的地方都会非常感激。

回答

1

那么,这是一个典型的情况,修改原始fancybox文件不是一个好主意(除非你知道你在做什么)。创建自己的自定义脚本来修改默认设置总是更好。

在你的“改装”的fancybox js文件,你在排队1707添加了这个:

css : { 
    'background' : 'rgba(200,200,200,0.35)' // changing here does change overlay colour 
}, // custom CSS properties 

这种变化抑制的fancybox的叠加图像被渲染,如的fancybox css文件的151行设置:

.fancybox-overlay { 
    background: url("fancybox_overlay.png") repeat scroll 0 0 transparent; 
    /* other properties here */ 
} 

IE8及更低版本不支持RGBa因此不存在覆盖。尽管如此,将回退声明设置为建议HERE以避免这类问题是个不错的主意。

下一次尝试使用您自己的自定义脚本覆盖默认设置并保留原始文件。

编辑

如果你想设置自己的PNG 覆盖图像背景(有自己的颜色和透明度),然后只需添加到您的自定义脚本:

helpers: { 
    overlay: { 
     css: { 
      'background-image': 'url("path/my_own_overlay.png")' 
     } 
    } 
} 

离开单独的原始fancybox_overlay.png文件。

+0

现货 - 再次感谢。我会尽力减少那些我不了解的东西。那么有没有办法改变叠加颜色,或者我应该改变fancybox_overlay.png? – peterh 2013-03-26 19:44:24

+0

@peterh:我不会更改fancybox_overlay.png,请参阅我编辑的选项的答案。 – JFK 2013-03-26 20:14:22

+0

好的,理解。 – peterh 2013-03-26 21:04:13

相关问题