5

我有以下 jqueryui 对话框:

        $("#dialog").dialog({
        bgiframe: true,
        autoOpen: false,
        height: 420,
        hide: 'slide',
        modal: true,
        buttons: {
                            'Annuler': function() {
                $(this).dialog('close');
            },
            'Envoyer votre message': function() {}
}

当我显示它时:

    $('#question-annonceur').click(function() {
        $('#dialog').dialog('open');
    });

它非常集中。但是当我垂直滚动时,它不再居中了。实际上,对话框仍然居中(关于用户设置的滚动条位置),但是滚动条已经滚动到窗口的顶部,然后,对话框不再居中(因为它以新的滚动条位置为中心)。

我可以设置一个属性,以便滚动条不会像这样在顶部重置吗?

谢谢。

4

2 回答 2

10

将 CSS 从 position:absolute 更改为 position:fixed 对我有用:

.ui-dialog { position: fixed; padding: .1em; width: 300px; overflow: hidden; }
于 2010-06-04T18:38:11.867 回答
2
jQuery(window).scroll(function() {
    jQuery('#dialog').dialog('option','position','center');    });

在 jquery 1.9 中为我工作

这是假设你的对话框有id="dialog"

于 2013-06-26T17:56:39.860 回答