兼容主流浏览器的 iframe 自适应高度 JS 脚本

作者:流萤时间:2026-10-27 21:12:43浏览:512

本文提供一段兼容主流浏览器的 JavaScript 脚本,用于实现 iframe 高度的自动适应。通过 setTimeout 延迟获取文档高度,解决加载不同步问题。同时附带动态向页面 head 插入外部 CSS 样式表的扩展功能,适用于需要动态管理样式的 Web 开发场景。

iframe 高度自适应脚本

以下代码实现了对主流浏览器的兼容,自动调整 iframe 的高度:


具体实现代码如下:

 
// 实现 iframe 高度自适应逻辑
function iframeAutoFit(iframeObj) {
setTimeout(function () {
if (!iframeObj) return;
iframeObj.height = (iframeObj.Document ? iframeObj.Document.body.scrollHeight : iframeObj.contentDocument.body.offsetHeight);
}, 200);
}

iframe 调用示例

在 HTML 中调用该函数的方法如下:


HTML 代码示例:

 
<iframe id="HQRight" name="HQRight" onload="javascript:iframeAutoFit(this);"
height="235px;" width="770px" frameborder="0" scrolling="no"
src="Market/HQData_page.aspx?t=tjs"></iframe>

动态添加 CSS 样式扩展

扩展功能:


动态添加样式表的代码如下:

 
// 动态向文档添加样式表文件
function addSheetFile(obj, path) {
if (obj == undefined || obj == null)
obj = document;
var fileref = obj.createElement("link")
fileref.rel = "stylesheet";
fileref.type = "text/css";
fileref.href = path;
fileref.media = "screen";
var headobj = obj.getElementsByTagName('head')[0];
headobj.appendChild(fileref);
} 
作者最新文章