div里嵌套iframe,如何让div和iframe的高度自适应

clipboard.png
请问我如何设置contentList 与iframe的高度呢?
现在这个,iframe高度是固定的,里面的事件有点击出现隐藏的,出现了高度就会变的跟高一些,然而里面的内容就会超出,超出就被隐藏无法查看,我想设置高度自适应,不管里面的内容都是,都可以看得见,不用被隐藏,谢谢大神

阅读 8.4k
4 个回答

这个我写了

            <div class="contentList" style="padding:20px 0">
                <iframe name="fname" frameborder="0" scrolling="no" width="100%" height="auto" src="iframe/productSummary/new01.html" onload="setIframeHeight(this)" class="m-frame"></iframe>
                <iframe name="fname" frameborder="0" scrolling="no" width="100%" height="auto" src="iframe/productSummary/new02.html" onload="setIframeHeight(this)" class="m-frame"></iframe>
                 <iframe name="fname" frameborder="0" scrolling="no" width="100%" height="auto" src="iframe/productSummary/new03.html" onload="setIframeHeight(this)" class="m-frame"></iframe> 
                
            </div>
        </div>
    </div>
    <div class="clear"></div>
    <div class="footer">
        <div class="option">
            <p class="first">差品服务热线:400-820-8590</p>
            <p>Copyright @ 2004-2017 宝钢股份 沪ICP备05031718号</p>
        </div>
    </div>
</body>

</html>
<script type="text/javascript">

    //iframe
function setIframeHeight(iframe){
    if(iframe){
        var iframeWin = iframe.contentWindow || iframe.contentDocument.parentWindow;
        if(iframeWin.document.body){
            iframe.height = iframeWin.document.documentElement.scrollHeight || iframeWin.document.body.scrollHeight;
        }
    }
}
window.onload = function(){
    setIframeHeight($('.m-frame'));
}

</script>
但是效果不尽人意,三个标签就第一个
标签有用,其他都没用

你可以给它加scrolling="yes",当超出高度时,可以显示滚动条

这个,直接到stackoverflow上面搜一下iframe auto height应该就能找到答案了。
应该是需要区分是否跨域的情况

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题