【发布时间】:2014-02-03 19:02:07
【问题描述】:
在 jQueryUI 对话框中,我有一个 iFrame,它为我提供了文件上传功能。这个 upload-iframe 应该是对话框高度的 50%(使用$(window).height())。
在对话框文件的$(document).ready(function(){ ... }); 中,我正在设置 iFrame 的高度。然后在 iframe 中使用相同的结构来设置其中 div 的高度以正确覆盖对话框的 50% 高度(iframe 的 100% 高度)。在 iframe 中,我使用 $(window).height() 来设置高度。
这适用于所有浏览器,包括 IE9,但不适用于 IE8。
问题似乎是在加载对话框时呈现 iframe 内容。 iframe 获得的高度是实际 iframe 内容所需的高度,在我的例子中是 150px。
我已经尝试了很多事情来完成我想要的:
- 将代码放在对话框中的 $(document).ready() 之外
- 将调整 iframe 大小的代码放在对话框源代码的末尾
- 在 iframe 中使用 $(parent.document).ready()
- 一些非 jQuery 表示法/语法试图影响高度。
不幸的是,他们都没有成功。 关于如何告诉 IE8 父/对话框窗口 50% 的高度有什么建议吗?
【问题讨论】:
-
也许您需要使用“老式”
window.onload。在加载所有内容和资源之前它不会触发。
标签: javascript jquery html css iframe