我有一个小问题。在我的 aspx 页面上,我有一个 iframe,其中包含网格、表格等,它们总是明显地改变它们的高度。之前的开发团队解决了这个问题,他们将iframe的高度属性设置为恒定的3500px。这不是那么优雅的方式,所以我添加了一段 JS 代码,自动检查内容并调整 iframe 高度。 我从这里得到了 JS 脚本:
iframe Auto Adjust Height as content changes
问题是,这段 js 代码在 Chrome 和 Firefox 中运行良好,并且几乎每次在 IE 中都运行良好。有时我在 IE 中收到一条错误消息: “无法获取未定义或 null 引用 jquery 的属性‘nodename’”或“参数无效”。从这时起,setInterval 内的函数将不再运行,这就是为什么 iframe 高度永远不会被调整的原因。我做了一些修改,这个高度检查函数是从 body onload 事件调用的。理论上这个js脚本会在整个dom结构加载时运行。 Firefox 和 Chrome 都可以,10 IE 中的 8 次也可以。
有人可以帮助我吗?您有什么解决方案可以建议我吗?非常感谢。
最佳答案
在其中执行代码以确保它在构建完整页面时执行:
$(document).ready(function(e) {
// .. iframe resize here
});
像这样的页面加载偶发故障几乎总是由在页面加载和 DOM 准备就绪之前执行 JavaScript 引起的。
关于javascript - iframe 自动高度调整不适用于 IE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32989484/