在Firefox中滚动页面后,jQuery UI对话框不显示

时间:2010-07-08 15:54:58

标签: jquery jquery-ui modal-dialog

我有一个链接:

<a class="fg-button ui-state-default fg-button-icon-left assistButton" pbcType="download" title="Click for download information"><span class="ui-icon ui-icon-document"></span>File</a>

我有一些jQuery:

$(".assistButton").click(function(){
        $('#dialog').css('color', '#000000');
        $("#dialog").dialog({ 
            bgiframe: true,
            position: 'center',
            width: $(window).width()-80,
            height: $(window).height()-80,
            title: 'Some title',
            modal: true,
            buttons: { "Close": function() { $(this).dialog("destroy"); }}
        });
})

这可以正常工作(对话框打开正确),直到您向下滚动屏幕。一旦向下滚动屏幕,对话框就不会出现,屏幕会变为灰色,因为它是一个模态对话框。

我的假设是

position: 'center',

将它放在屏幕中心,但我猜它是从左到右居中,而不是从上到下......?

当在IE中它工作正常时,在Windows或OS X上的Firefox中它不起作用。

我错过了什么?我在网上发现了其他几个(http://dev.jqueryui.com/ticket/4539为例),但到目前为止还没有任何工作。

编辑: 在Firefox中,它打开但它“在首屏”,我无法向上滚动它。它在那里,我只是看不到它。

1 个答案:

答案 0 :(得分:1)

jQuery UI 1.8.3 or 1.8.4 (due to a mis-build 1.8.3 == 1.8.4) release在这个部门做了一些改变,最明显的就是这个:

  

<强> DIALOG
  对话框插件也已更新,以允许完全使用position实用程序。仍然可以使用字符串或数组设置对话框的位置,但将在以后的版本中删除。

使用在小部件之间共享的基本位置实用程序对位置进行了彻底检查,因此处理诸如滚动页面之类的代码的代码现在处理得更加干净。在我们遇到错误的一个问题页面中,1.8.4版本修复了它。