iframe自适应屏幕大小_iframe高度自适应撑开

iframe自适应屏幕大小_iframe高度自适应撑开今天有朋友问到我关于“iframe自适应高度”的问题,原本以为是很简单的问题,没想到折腾了20分钟才搞定。期间遇到几个问题,要么是高度自适应了,但是当窗口改变时会出现滚动条。也就是当窗口放大时iframe没有自动跟随变大显得很小,或是当窗口缩小时iframe还是之前那么大就出现了滚动条。还有或是高度不准确,那么就达不到想要的效果了。为什么需要使用iframe自适应高度呢?其实就是为

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

今天有朋友问到我关于“iframe自适应高度”的问题,原本以为是很简单的问题,没想到折腾了20分钟才搞定。期间遇到几个问题,要么是高度自适应了,但是当窗口改变时会出现滚动条。也就是当窗口放大时iframe没有自动跟随变大显得很小,或是当窗口缩小时iframe还是之前那么大就出现了滚动条。还有或是高度不准确,那么就达不到想要的效果了。

iframe自适应高度

为什么需要使用iframe自适应高度呢?其实就是为了美观,要不然iframe和窗口长短大小不一,看起来总是不那么舒服,特别是对于我们这些编程的来说,如鲠在喉的感觉。

首先设置样式

body{margin:0; padding:0;}

如果不设置body的margin和padding为0的话,页面上下左右会出现空白。

html代码如下

<iframe src=”http://www.fulibac.com” id=”myiframe” scrolling=”no” frameborder=”0″></iframe>

下面就是今天小编写的时候遇到的问题,考虑到有些朋友可能没怎么用jquery就直接用js吧。

方法一

var ifm= document.getElementById(“myiframe”);

ifm.height=document.documentElement.clientHeight;

这个方法可以达到让iframe自适应高度的效果,但是如果你将窗口放大或缩小效果就不出来了,也就是本文开头讲的。需要再次刷新,那就不属于自适应了。

那么问题来了,需要解决当窗口改变大小的时候执行js事件,以让iframe自适就高度。那么就需要将相关的代码写成函数,并且给iframe加上onLoad=”changeFrameHeight()”,也就是下面的方法二了。

方法二

<iframe src=”http://www.fulibac.com” id=”myiframe” scrolling=”no” οnlοad=”changeFrameHeight()” frameborder=”0″></iframe>

js代码也得跟着改

function changeFrameHeight(){

    var ifm= document.getElementById(“iframepage”); 
    ifm.height=document.documentElement.clientHeight;

}

window.οnresize=function(){  
     changeFrameHeight();  

window.onresize的作用就是当窗口大小改变的时候会触发这个事件。

所以,使用方法二就可以完美的、真正的让iframe自适应高度了,试试看吧,并且兼容多种浏览器。


源引:http://www.fulibac.com/993.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/182669.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 【spring-kafka】@KafkaListener详解与使用

    【spring-kafka】@KafkaListener详解与使用说明从2.2.4版开始,您可以直接在注释上指定Kafka使用者属性,这些属性将覆盖在使用者工厂中配置的具有相同名称的所有属性。您不能通过这种方式指定group.id和client.id属性。他们将被忽略;可以使用#{…​}或属性占位符(${…​})在SpEL上配置注释上的大多数属性。比如:@KafkaListener(id=”consumer-id”,topics=”SHI_TOPIC1″,concurrency=”${listen.concurrency:3}”,

    2022年10月14日
    0
  • 02.全文搜索ES

    02.全文搜索ES

    2021年7月12日
    62
  • 异步提交表单_js异步提交表单并回调

    异步提交表单_js异步提交表单并回调异步提交表单异步提交表单的步骤所谓异步提交表单,就是不再使用表单的提交按钮实现表单的提交功能,而是通过Ajax异步交互方式实现表单提交。具体实现步骤如下:获取表单及所有表单组件对应的数据值。将所有表单组件对应的数据值拼成特定格式的字符串或是JSON格式数据。通过Ajax异步交互方式提交表单。varinfo=’username=’+$(‘#username’).val()+’&password=’+$(‘#password’).val();$.ajax({url:”

    2022年10月28日
    0
  • vim命令下显示行号[通俗易懂]

    vim默认不显示行号如何使vim命令显示行号?显示当前行行号在vim的命令模式下,在光标停留处,退出命令模式,然后输入:nu,即可显示当前这行的号码显示所有行号如果要显示该文件的所有行号,则需要在vim的命令模式下,输入:setnu,则可以显示该文件的所有行号取消所有行号如果要显示该文件的所有行号,则需要在vim的命令模式下输入,在光标停留处,退出命令模式,然后输入:setnonu,即可显示当前这行的号码这样的设置方法只能维持在,当前vim打开的文件…

    2022年4月11日
    115
  • 分手后的唯一

    分手后的唯一

    2021年7月25日
    67
  • python中的装饰器

    python中的装饰器

    2021年12月2日
    40

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号