IE6中的模态居中问题

时间:2010-01-14 09:54:42

标签: javascript css

我在我的网站上使用弹出模式,但是对于可怕的IE6有问题 模式弹出窗口中间的爆炸,直到页面是一个长滚动,然后IE6打开模态,但你需要向上滚动才能找到它。

我正在使用的代码如下。

$(id).css('top',  winH/2-$(id).height()/2);  
$(id).css('left', winW/2-$(id).width()/2);  

任何人都可以建议IE6的黑客攻击 感谢。

1 个答案:

答案 0 :(得分:0)

这也不适用于其他浏览器,因为您没有提供页面滚动偏移量。您还应该将元素保存到变量中以保存jQuery不会遍历DOM四次,您还可以将css声明合并为一个。试试这个:

var el = $(id);
el.css({
    top:  $(window).scrollTop() + winH / 2 - el.height() / 2,
    left: winW / 2 - el.width() / 2
});  

其他方法是使用文档高度而不是窗口高度。窗口高度是屏幕上当前可见的页面高度,文档高度是整个页面的高度。使用文档高度:

var el = $(id);
el.css({
    top:  $(document).height() / 2 - el.height() / 2,
    left: winW / 2 - el.width() / 2
});