IE9渲染问题与jquery hide / show

时间:2012-11-12 10:08:59

标签: jquery internet-explorer

我在jQuery中编写了一些lightbox风格的弹出窗口。除了IE9(如果被认为是一个体面的浏览器),它适用于所有体面的浏览器。单击它可以正常工作:弹出窗口打开,没什么不寻常的。但是,只要移动光标,一切都会开始闪烁,消失或IE9能够破坏功能。

我不知道这是怎么发生的(因为它不会发生在IE8中)。我已经给出了所有使用正确位置和z索引的元素。问题不在于黑屏覆盖(这只是一个透明背景的div,z-index远低于居中内容),我已经通过从代码中完全删除该元素来测试它。

这是我用来隐藏/显示div的代码:

    //open popup
$(".pop").click(function(){
    $refselector = "." + $(this).attr("rel")
    $($refselector).fadeIn(500);
    $(".ui-overlay").fadeIn(50);
positionPopup();
});  

//close popup
$(".close").click(function(){
    $(".overlay-form").fadeOut(500);
    $(".ui-overlay").fadeOut(500);
});

//close popup by clicking outside the box
$(".ui-overlay").click(function(){
    $(".overlay-form").fadeOut(500);
    $(".ui-overlay").fadeOut(500);
});

如果您想看到它的实际效果:http://www.puurtrainingen.nl/referenties并点击四个框中的任意一个。

如果有人遇到过这样的问题并且知道解决方案:感谢您的帮助!

提前致谢

2 个答案:

答案 0 :(得分:0)

我认为在打开嵌套在无序列表中的弹出窗口时我遇到了类似的问题。也许你可以尝试将你的弹出式HTML放在ul?

之外

无论如何,我一直很高兴http://fancybox.net/能为你做那些弹出式的事情。如果你还没有听说过,我建议你去看看。

答案 1 :(得分:0)

.page-item的{​​{1}}导致了这个问题。

您可以更改overflow: hidden的CSS规则,也可以将.page-item移至另一个容器。