解决iframe框架,高度自适应问题

首先HTML代码
<div class="news_list">
    <iframe src="newsCenter.html" id="newsMenu" name="newsMenu" frameborder="0" width="810px" height="auto" scrolling="no"></iframe>
</div>
javascript代码(这里使用jquery,操作dom比较方便)
<script>
    window.onload = function(){
        // var obj = $('#newsMenu').contents().find('.news_list_item').outerHeight();
        // console.log(obj);
        //获取子页面的高度
        function refresh(){
            var childPageH = $('#newsMenu').contents().find('body').height();
            $('#newsMenu').height(childPageH);
            console.log(childPageH);
        }
        refresh();
        setInterval(refresh,100)
    }
</script>
延伸
  • 在引入iframes框架的内部获取iframes里面的内容高度
var obj = $('#newsMenu').contents().find('.news_list_item').outerHeight(); 
$(function(){
    //获取单个新闻头的高度(包括宽度边框和边距)
    var $newsTitleH = $('.news_list_item').outerHeight();
    //获取页面中所有新闻头的个数
    var $newsTitleN = $('.news_list_item').length;
    //获取页面的显示高度
    var bodyH = $('body').height();
    //设置父级iframe框架的高度
    $(window.parent.document).find('#newsMenu').height(bodyH+'px');
    var $newsTitleH = $('.news_list_item').outerHeight();
    console.log($newst);
});
  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 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、付费专栏及课程。

余额充值