博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

iframe在ie11中会显示过于短。为了自适应,增加如下代码: 

<iframe *** onload='changeFrameHeight()' >

 

 <script> 

        function changeFrameHeight() {

            var ifm = document.getElementById("content3");

            ifm.height = document.body.clientHeight ;

            ifm.width = document.body.clientWidth ;

        }

        window.onresize = function () {

            changeFrameHeight();

        }

</script> 

请注意,需要使用document.body.clientHeight,网上的教程写的是document.documentElement.clientHeight,在ie11和firefox中测试通过(本来就是为了兼容ie11才做的),但是在360浏览器下,document.documentElement.clientHeight永远为0。话说现在360浏览器的市场占有率很高啊(在文化程度不高的群体中),我司就是写了document.documentElement.clientHeight导致iframe无法显示,因此有大量的人发生此问题来投诉。。。作为一个强迫症程序员,心好累