iframe自适应高度 document.body.scrollHeight取值不对

springmv 切换iframe 时发现直接修改iframe src 或者使用 location.href = "“时不起作用

之后才有form 标段提交 在control中返回新网页的地址 才完成了网页切换

 

之后iframe自适应高度有出现了问题 子页面中使用document.body.scrollHeight获取的高度值不对

 

在iframe引用的前一个页面的高度比iframe 引用的次页面高是  document.body.scrollHeight 获取的高度值是上一个页面的 body高度值  导致页面的排版的不美观

 

解决方法是  :

在iframe子页面加载完成时首先将iframe的高度值设置为0(清除上一个子页面的高度影响)  然后通过document.body.scrollHeight获取该子页面的高度值 来设置iframe的高度值

 

代码

子页面中:

$(document).ready(function(){

     window.parent.iFrameHeight();

});

 

在父页面中

function iFrameHeight(){
        var ifm= document.getElementById("smsComptBody");  
        var subWeb = document.frames ? document.frames["smsComptBody"].document :    ifm.contentDocument;  
        if(ifm != null && subWeb != null) {
            $("#smsComptBody").height(0);//此处关键处 莫忘  清除上一个子页面高度的影响
            $("#smsComptBody").height(subWeb.body.scrollHeight);
               //ifm.height = subWeb.body.scrollHeight;
          
        }
    }

你可能感兴趣的:(iframe自适应高度 document.body.scrollHeight取值不对)