0

我正在使用Eric Martin 的甜蜜 'simplemodal' jQuery 插件。它工作得非常好,并且会推荐给任何正在寻找基于 jQuery 的轻量级模态对话解决方案的人。

也就是说,我有一些特别长的内容“需要”显示为模式。默认情况下,容器元素使用 'overflow:auto' 来处理太长而无法容纳在浏览器窗口中的内容。这在大多数情况下效果很好,但在这种情况下,我希望对话保持全高并与页面的其余部分一起滚动(定位为“绝对”与“固定”)。我可以通过修改任何position: 'fixed'源中对position: 'absolute'的引用来相当容易地完成这项工作,但这很糟糕,因为这意味着我的所有模态都将以这种方式显示......

有人对如何优雅地完成这项工作有任何想法吗?

4

5 回答 5

1

尝试将 position:absolute 添加到该特定 div 区域的实际模态调用中

像下面

$("#somebutton").click(function() {

    $('#my-modal-content').modal({
        position:absolute
    });
});

我和你有同样的问题,但我想要一个不同尺寸的盒子来装不同的按钮/功能,这就是我解决它的方法。祝你好运!

于 2010-01-26T21:53:45.163 回答
1

这就是我所做的:

jQuery('#MyModal').modal({
    //options
});
jQuery('#MyModal').parents('.simplemodal-container').css('position', 'absolute');
于 2011-09-20T13:47:30.380 回答
0

只需在对话框本身中有一个滚动条。

于 2010-01-26T21:54:53.390 回答
0

听起来您并不反对使源适应您的特定需求......因此我建议对其进行重新设计,以便您可以通过选项对象提供定位和溢出属性。

于 2010-01-26T21:55:18.757 回答
0

您必须对代码进行重大更改,尤其是处理 IE(主要是 IE6)的代码。

仅更改为绝对位置最初适用于某些浏览器,但某些浏览器或页面调整大小(在任何浏览器中)会恢复到固定位置。

于 2010-02-13T16:30:14.533 回答