关于SimpleModal jQuery插件的问题 – 初次打开后可能重新居中?

我的问题与SimpleModal jQuery插件有关 。 我打开模态窗口没有问题,但是一旦打开它就会停留在屏幕上[居中]的位置,但是它的内容正在变化,使其更高,因此不再居中。 是否有一种简单的方法可以重新调整它以使其再次居中?

编辑:我认为通过显示两个截图来帮助解释我的问题: 之前和之后 – 基本上我使用jQuery的slideUp和slideDownfunction来隐藏信用卡表单,具体取决于用户是通过现金/支票还是信用卡付款。 显然,对于信用卡字段,容器的高度增加了。

我尝试在slideUp / slideDown的回调元素中添加$("div#modal-element").setPosition()但无效 – 实际上setPosition()抛出了JS错误,因为显然该函数不存在。 我总是尝试添加autoResize选项并将其设置为true。

由于SimpleModal用于处理窗口大小调整的重新定位,因此最简单的方法是触发该事件。 内容更改后,请调用此方法:

 $(window).resize(); 

如果您处于其中一个回调中,则可以访问所有函数和属性 – 因此您可以调用setPosition()来重新定位对话框。 例如:

 $(element).modal({ onShow: function (dialog) { var modal = this; // do stuff and change the container dimensions modal.setPosition(); // re-center the container } }); 

我没有测试过代码,但它应该可以运行。

HTH