我正在使用 jQuery Fancybox 在模态窗口中显示表单。我正在使用以下代码:
$("a.iframe").fancybox({
'padding': 0,
'width': 650,
'showCloseButton': false,
'hideOnContentClick': false,
'transitionIn': 'elastic',
'transitionOut': 'elastic',
'onComplete': function () {
$('#fancybox-frame').load(function () {
$('#fancybox-content').height($(this).contents().find('body').height() + 20);
});
}
});
通过附加的 onComplete 函数,我可以根据内部内容的高度调整 iframe 的高度。
但是,我在 iframe 中使用 jQuery 的 .hide() 隐藏了一些元素。每当我想 .show() 这些元素时,iframe 本身不会随现在可见元素的额外高度一起调整大小。
我怎样才能做到这一点?谢谢!
最佳答案
把下面的函数放到页面
$.fn.ResizeFancy = function(){
$('#fancybox-content').height($('#fancybox-frame').contents().find('body').height() + 20);
};
之后,将此函数触发到您的 showHide 函数。例如;
function yourShowHideFn(){
//bla bla bla
$.fn.ResizeFancy();
}
关于javascript - 根据里面变化的内容动态调整jQuery Fancybox的iframe高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7430604/