javascript - 如何根据元素高度动态调整 iframe 高度?

标签 javascript jquery asp.net iframe

我在与父/容器页面相同的域/协议(protocol)内的 iframe 中加载 aspx 网页。 Iframe 中的内容有时比 iframe 本身更高。我不想在我的 Iframe 上显示滚动条。

我需要根据 iframe 将包含的 aspx 页面内的包装器“div”标记调整 iframe 的高度。 下面是我为实现此目的而编写的 jquery:

$("#TB_window", window.parent.document).height($("body").height() + 50);

'TB_window' - 包含 Iframe 的 div。

'body' - iframe 中 aspx 的 body 元素。

此脚本附加到 iframe 内容。我从父页面获取 TB_window 元素。 虽然这在 Chrome 上运行良好,但 TB_window 在 Firefox 中崩溃了。 我真的很困惑/不知道为什么会这样。

任何人都可以就我如何更好地处理这种情况提供任何建议吗? 非常感谢您的帮助 谢谢

最佳答案

你必须在你的 iframe 上使用管理一些事件

 <iframe id="iframe" src="xyz" onload="FrameLoad(this);"
  onresize="FrameLoad(this);" scrolling="no" frameborder="0">
  </iframe>


   function FrameLoad(ctrl) {
   var the_height = ctrl.contentWindow.document.body.scrollHeight;
   $(ctrl).height(the_height)
 }

也用于跨浏览器

document.domain = document.location.hostname;

在父页面和子页面中

关于javascript - 如何根据元素高度动态调整 iframe 高度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9155634/

相关文章:

javascript - 当你编写自己的jquery函数时,这意味着什么?

javascript - 将元素 id 作为参数传递给函数

javascript - 替换 Jquery UI 中的命令 GrowlUI?

c# - 根据权限对 GridView 编辑发出警报

asp.net - 在 asp.net 中根据设备应用不同的 css?

javascript - 显示动画不是动画

javascript - $ ("html, body").animate({scrollTop :0}, 'slow' );在我的页面上不起作用

javascript - 如何根据最高跨度调整相邻跨度的跨度高度

javascript - 如果他真的想离开页面,我该如何询问网络用户以进行确认?

asp.net - 如何防止用户更改asp.net sessionid cookie