IE中的JQuery popup问题

时间:2011-04-14 06:04:19

标签: javascript jquery asp.net

IE弹出JQuery Dialog时会显示滚动条。 FF没有显示滚动条。 IE CSS有什么问题?

<div id="disablebg" style="display: none;overflow:hidden;">
                <uc1:CreateInqGeneral ID="CreateInqGeneral1" runat="server" />
            </div>

 function ShowDialog() {

        $("#disablebg").dialog({
            resizable: false,
            modal: true,
            width: "550px"
        }); 
    }

1 个答案:

答案 0 :(得分:1)

我使用这样的东西来避免这个问题。您可以轻松修改它以仅隐藏水平滚动条。

function hideScrollBars() {
    var top = $('html').scrollTop();
    var left = $('html').scrollLeft();
    $('html').css('overflow', 'hidden');
    $('html').scrollTop(top);
    $('html').scrollLeft(left);
}

function showScrollBars() {
    var top = $('html').scrollTop();
    var left = $('html').scrollLeft();
    $('html').css('overflow', 'auto');
    $('html').scrollTop(top);
    $('html').scrollLeft(left);
}

$.extend($.ui.dialog.prototype.options, {
    bgiframe: true,
    resizable: false,
    modal: true,
    open: function () { hideScrollBars(); },
    close: function () { showScrollBars(); }
});

注意:这样我就为所有对话框实例设置了openaly和close事件。如果覆盖特定实例上的打开/关闭事件,则必须调用hideScrollBars / showScrollBars函数。