0

抱歉,如果这已在其他地方得到回答,但我找不到任何东西。

我正在使用jQueryTools Overlay。在 chrome 中工作正常,但在 IE-8 中我有这个问题,我的覆盖 Div 像普通 div 一样弹出,在我的表单顶部。

继承人的html:

<div id="overlay" >
        <img src="http://www.sanbaldo.com/wordpress/wp-content/bigrotation2.gif" class="img-load" />
    </div>

继承人的CSS:

#overlay
{
    background: #DCDCDC;
    border: 5px solid #666;
    display: none;
    height: 50%;
    left: 50%;
    opacity: 0.8;
    position: relative;
    top: 30%;
    width: 50%;
}
.img-load
{
    left: 50%;
    position: relative;
    top: 50%;
}

查询:

$(".button_small").click(function () {
    $("#overlay").overlay().load();
});
4

1 回答 1

0

问题是 IE8 现在遵守标准,这给试图规避 IE8 之前的问题的插件带来了问题。

一种可能的解决方案是使用此元标记强制 IE9 进入 IE8 标准模式:

另一种选择是修复代码:

大多数 UI 插件驻留在 $.browser.msie 上以检查我们是否在 IE 中,但它们不检查版本。在我的情况下,解决方案(jquery.ui.checkbox.js)是用这个变量替换所有 $.browser.msie 调用:

var isIEAndVersionIsLowerThan8 = $.browser.msie && (parseInt($.browser.version, 10) < 8);

此解决方案比添加元标记更好,因为它将启用所有 IE8 功能。

于 2013-01-29T06:55:10.137 回答