繁体   English   中英

内容扩展项目时设置iframe的高度

[英]Set height for iframe when content has expanded items

我有2个iframe:

  1. 导航
  2. 动态内容

我正在使用JavaScript调整内容的大小:

function autoResize(id) {
    var newheight;
    newheight = document.getElementById(id).contentWindow.document.body.scrollHeight;
    document.getElementById(id).height = (newheight) + 'px';
};

的HTML是:

<iframe src="navigation.jsp" id="leftFrame" name="leftFrame" onload="autoResize('leftFrame');" frameborder="0" scrolling="auto" width="200" style="height: 100%;"></iframe>
<iframe src="" id="mainFrame" name="mainFrame" onload="autoResize('mainFrame');" frameborder="0" scrolling="no" width="200" style="height: 100%;"></iframe>

我的动态页面具有一些可扩展的内容,但是当我单击以扩展内容时,页面会隐藏其内容。 (对于mainFrame,为scrollbar =“ no”)

我不想为主框架启用滚动条,因为它显示了两个滚动条(即大型机和浏览器滚动条),我应该怎么做才能解决?

您可以尝试使用jQuery的load()功能代替iframe。

<body>
    <div id="nav"></div>
    <div id="content"></div>
</body>

<script>
    $(document).ready(function(){
        $('#nav').load('path/to/navigation');
        $('#content').load('path/to/dynamic content');
    });
</script>

加载框架时, autoResize仅运行一次(jQuery的load()也会)。 每次框架的内容更改时,您都需要调整框架的大小。 这意味着将调整大小事件捕获在框架中,然后从那里对父项调用autoResize

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM