当前位置: 首页 > 妙招 > 正文

iframe自适应高度 JS自适应高度,其实就是设置i

作者:admin 发布时间:2023-04-03 22:01:21 分类:妙招 浏览:71


  JS自适应高度,其实就是设置iframe的高度,使其等于内嵌网页的高度,从而看不出来滚动条和嵌套痕迹。对于用户体验和网站美观起着重要作用。

  如果内容是固定的,那么我们可以通过CSS来给它直接定义一个高度,同样可以实现上面的需求。当内容是未知或者是变化的时候。这个时候又有几种情况了。

  iframe内容未知,高度可预测

  这个时候,我们可以给它添加一个默认的CSS的min-height值,然后同时使用JavaScript改变高度。常用的兼容代码有:

  演示地址

  演示一(如果在同个顶级域名下,不同子域名之间互通信息,设置document.domain="caibaojian.com"

  只要修改以上的iframe的ID即可了。或者你可以直接在iframe里面写代码,我们一般为了不污染htmL代码,建议使用上面的代码。

  演示二

  多个iframe的情况下

  演示三

  针对知道的iframe的ID调用

  演示四

  内容宽度变化的iframe高度自适应

  演示五

  打开调试运行窗口可以看到运行。

  跨域下的iframe自适应高度

  跨域的时候,由于js的同源策略,父页面内的js不能获取到iframe页面的高度。需要一个页面来做代理。

  方法如下:假设下的一个页面a.html要包含下的一个页面c.html。

  我们使用下的另一个页面agent.html来做代理,通过它获取iframe页面的高度,并设定iframe元素的高度。

  a.html中包含iframe:

  在c.html中加入如下代码:

  最后,agent.html中放入一段js:

  agent.html从URL中获得宽度值和高度值,并设置iframe的高度和宽度(因为agent.html在下,所以操作a.html时不受JavaScript的同源限制)

  演示六

  相关文章:

  postMessage+window.name实现跨域iframe高度自适应兼容版

  postMessage+window.name实现iframe跨域通信jquery兼容版

  【iframe高度自适应的6个方法】相关文章:

  1.前端工程师如何处理10万条数据

  2.谁说前端不需要懂二进制

  3.你不知道的 Blob

  4.JavaScript开发人员更喜欢Deno的五大原因

  5.Vue版的团队代码规范

  6.看到赚到!重读vue2.0风格指南,我整理了这些关键规则

  7.实现一个Vue自定义指令懒加载

  8.四年前端带你理解路由懒加载的原理


标签:me高度htm演示适应


相关推荐

最新推荐

关灯