IE7没有正确定位对话窗口调整大小
问题描述:
就像我说的,IE7(和IE6,但我真的不在乎IE6很多)没有正确定位对话窗口调整大小的对话框。当窗口重新调整大小时,对话框会关闭。 IE8的FF浏览器Safari浏览器都能正常工作,位置和重新调整大小的对话框很好,但IE7重新调整了对话框的大小,但位置不正确。有人知道一些解决这个问题吗?IE7没有正确定位对话窗口调整大小
$("#mydialog").dialog({
autoOpen: false,
bgiframe: true,
resizable: false,
modal: true,
title: "",
height: 400,
overlay: {
backgroundColor: '#000',
opacity: 0.5
}
});
$(window).resize(function(){
$('#mydialog').dialog("option", "height", $(window).height() - 40);
$('#mydialog').dialog('option', 'position', 'center');
});
$("#mydialog").dialog("open");
答
好的这里是我发现的解决方法,它有点慢,但它的工作原理。
$(window).resize(function(){
$('#mydialog').dialog("option", "height", $(window).height() - 40);
$('#mydialog').dialog('option', 'position', 'center');
if ($.browser.msie && parseInt($.browser.version) <= 7) {
$('#mydialog').dialog('close');
$('#mydialog').dialog('open');
}
});
答
我最近遇到了这一点,并发现了IE7更快更合适的修复,只是身体的CSS属性设置为相对的,占IE7处理窗口对象的方式。
由于您使用jQuery,下面应该工作:
$('body').css("position", "relative");
我还创建了以下说明的问题和解决方案:http://jsfiddle.net/ewsang/7PpcV/
要回答这个问题,一个需要知道的内部jQuery UI。您也可以在官方论坛上提问您的问题:http://forum.jquery.com/using-jquery-ui – 2010-03-24 08:57:16