我创建了一个灯箱脚本。一个JavaScript问题仍然存在,这让我发疯。元素高度在IE6中呈现之前未知;怎么解决?
源是http://github.com/Wolfr/Wolf-lightbox
在IE6中,当你点击图像,模态盒位置不对您第一次点击的模式可寻。如果关闭它并再次单击它,则模式正确定位。
我相信这是由于IE6不知道插入图像的尺寸。例如。登录第一次modalHeight它可能是像51,下一次500(模态已经“长大”,因为在它的图像现在“)。
任何人有任何想法?困在这里!
function positionBox() {
// initialize object references
var oElement = $('.modal');
var oWindow = $(window);
// calculate offset
var offsetLeft = parseInt((oWindow.width() - oElement.width())/2);
var offsetTop = parseInt((oWindow.height() - oElement.height())/2);
var modalWidth = parseInt(oElement.width());
var modalHeight = parseInt(oElement.height());
oElement.css('left', offsetLeft)
.css('top', offsetTop)
.css('width', modalWidth)
.css('height', modalHeight)
.css('position', 'fixed');
// IE6 should use position: absolute; since fixed is not supported
if($.browser.msie && $.browser.version =='6.0') {
oElement.css('position', 'absolute')
.css('top', offsetTop + oWindow.scrollTop());
}
}
你认为只是让IE6用户受苦? ;-) – Spudley 2010-10-22 13:56:14