异步操作执行后子页面重新修改父页面iframe高度

子页面加入ajax全局方法:

<script language="javascript" type="text/javascript">
        $(document).ready(function () {//异步请求加载完成
            $.ajaxSetup({
                'complete': function () {
                    //修改iframe高度
                    reSizeParentIframe();
                }
            });
        });        
    </script>

修改iframe高度:

//子页面重新修改父页面iframe高度
function reSizeParentIframe() {
    var realHeight = 0;
    if (navigator.userAgent.indexOf("Firefox") > 0 || navigator.userAgent.indexOf("Mozilla") > 0 || navigator.userAgent.indexOf("Safari") > 0 || navigator.userAgent.indexOf("Chrome") > 0) { // Mozilla, Safari,Chrome, ...  
        realHeight = window.document.documentElement.offsetHeight + 35; 
    } else if (navigator.userAgent.indexOf("MSIE") > 0) { // IE  
        var bodyScrollHeight = window.document.body.scrollHeight + 21; //取得body的scrollHeight  
        var elementScrollHeight = window.document.documentElement.scrollHeight + 1; //取得documentElement的scrollHeight  
        realHeight = Math.max(bodyScrollHeight, elementScrollHeight); //取当中比较大的一个  
    } else {//其他浏览器  
        realHeight = window.document.body.scrollHeight + window.document.body.clientHeight + 1;
    }
    if (realHeight < 400) {
        realHeight = 400;
    }
    if ($("#ifm", window.parent.document).is("iframe")) {
        $("#ifm", window.parent.document).height(realHeight);
    }
}

 参考:http://www.cnblogs.com/shenyixin/archive/2013/03/05/2943892.html

posted @ 2016-06-04 20:03  jhycwnqry  阅读(775)  评论(0编辑  收藏  举报