iframe框架高度自适应

在写jsp页面时,在主页面中用到了iframe标签嵌套子页面的情况,这种情况,子页面中的内容有的多有的少,所以iframe的高度也要自动适应,在网上找到了这个方式,记录一下;


代码如下:


<html>
    <head>
        <script type="text/javascript">
        //iframe自适应高度的函数
        var oTime = null;
        function resize() {
            if (oTime) {
                clearTimeout(oTime);
            }
            oTime = setTimeout(reset, 200);
        }
 
        //iframe自适应高度的函数
        function reset() {
            var frame = document.getElementById("iframeId");
            var outHeight = frame.offsetHeight;
            var inHeight = frame.contentWindow.document.body.scrollHeight;
            if (outHeight < inHeight) {
                frame.style.height = (inHeight + 10) + "px";
            }else if(inHeight>650){
                frame.style.height=(inHeight + 10) + "px";
            }else{
                frame.style.height="750px";
            }
        }
        </script>
    </head>
    <body>
        <div>
            <iframe src="test.html" id="iframeId" frameborder="0"
                scrolling="no" onreadystatechange="resize()" οnlοad="resize()"></iframe>
        </div>
    </body>
</html>

代码参考地址:http://bbs.csdn.net/topics/340017880


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用iframe标签嵌入网页时,通常需要进行内容自适应缩放以适应不同屏幕尺寸或设备。下面是一种简单的方法来实现这个功能。 首先,在iframe标签中添加一个属性:sandbox="allow-scripts allow-same-origin"。这将确保框架内容可以执行脚本,并允许与嵌入网页来自相同原源的链接进行交互。 然后,在所嵌入的网页的头部,加入一个用于缩放的JavaScript脚本。这段脚本会根据窗口大小动态调整iframe的尺寸,以确保内容适应屏幕。 ```html <script> function resizeIframe() { var iframe = document.getElementById('myFrame'); // 这里的'myFrame'需要替换成你自己的iframe的id var windowWidth = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth; // 获取窗口宽度 var windowHeight = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight; // 获取窗口高度 var iframeWidth = windowWidth; // iframe宽度等于窗口宽度 var iframeHeight = windowHeight; // iframe高度等于窗口高度 iframe.style.width = iframeWidth + 'px'; // 设置iframe宽度 iframe.style.height = iframeHeight + 'px'; // 设置iframe高度 } window.onload = resizeIframe; // 页面加载时调用一次 window.onresize = resizeIframe; // 窗口大小改变时调用 </script> ``` 最后,需要确保iframe的宽度和高度设置为100%,以使其填充父容器。 ```html <iframe id="myFrame" src="your_url" style="width: 100%; height: 100%;"></iframe> ``` 通过以上的步骤,就可以实现iframe内容的自适应缩放。无论窗口大小如何变化,内容都将以合适的比例进行缩放,以适应不同设备的屏幕。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值