我有一些代码可以动态调整 iframe 的大小:
function autoResizeFrames() {
frames = document.getElementsByTagName("iFrame");
window.setInterval("autoresize_frames()", 400);
}
function autoresize_frames() {
for (var i = 0; i < frames.length; ++i) {
if (frames[i].contentWindow.document.body) {
var frames_size = frames[i].contentWindow.document.body.offsetHeight;
if (document.all && !window.opera) {
frames_size = frames[i].contentWindow.document.body.scrollHeight;
}
frames[i].style.height = frames_size + 'px';
}
}
}
此功能在 Firefox 和 Chrome 中运行良好,但在 IE 10 和 9 中具有 mo 效果。
这是我有一个 IFrame 的地方
<div id="projectModal" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="projectModalLabel"
aria-hidden="true">
<div class="modal-header">
<button type="button" runat="server" onserverclick="btnClose_Click" class="close" aria-hidden="true">
×</button>
<h3 id="projectModalLabel">Edit Project</h3>
</div>
<div class="modal-body">
<iframe src="" style="width: 100%; height: 200px; border: none;" frameborder="0" id="projectFrame" name="projectFrame" scrolling="no" allowtransparency="true"></iframe>
</div>
<div class="modal-footer">
<button type="button" runat="server" onserverclick="btnClose_Click" class="btn" aria-hidden="true">
Close</button>
</div>
</div>
为什么它在除 IE 之外的所有地方都有效?我认为javascript无处不在?
谢谢
它说:
SCRIPT5007: Unable to get property 'document' of undefined or null reference
kezcommon.js, line 62 character 5
if (frames.contentWindow.document.body) {