美文网首页
iframe的使用

iframe的使用

作者: 菲儿_cdd4 | 来源:发表于2021-03-08 13:56 被阅读0次

为什么要去了解iframe呢?因为我们要实现一个微前端的需求,涉及到iframe,所以这篇文章先大致了解一下iframe,下一篇会说下vue项目实现微前端

先看下效果图:


image.png

iframe用于在网页内显示网页。
虽然iframe是能耗最高的一个元素,并且iframe的安全性很差,但是iframe的强大功能是不容忽视的,而且现在不乏公司正在使用它

在网上了解到<iframe> 标签规定一个内联框架。一个内联框架被用来在当前 HTML 文档中嵌入另一个文档。
所有的主流浏览器都支持<iframe>标签。你可以把提示的文字放到 <iframe> 和 </iframe>里面,这样不支持 <iframe>的浏览器就会出现提示的文字。

html部分:

 <!--  <iframe> 标签规定一个内联框架
          这里写div标签是为了看iframe嵌套的效果
     -->
    <div style="width:50%;height:50vh;">
        <iframe src="https://www.baidu.com/" id="myrame" frameborder="0" width="100%" height="100%">
        该网站使用了框架技术,但是您的浏览器不支持框架,请升级您的浏览器以便正常访问。 
        </iframe>
    </div>

那如何获取iframe里面的内容呢?

    var iframe = document.getElementById("myrame"); //获取iframe标签
    var iwindow = iframe.contentWindow; //获取iframe的window对象
    var idoc = iwindow.document; //获取iframe的document对象
    console.log(idoc.documentElement); //获取iframe的html
    console.log("body",idoc.body);

但是,这里面是获取不到里面的DOM的,可以在URL中获取(也就是引入的html文件)

iframe 的优缺点

优点:

重载页面时不需要重载整个页面,只需要重载页面中的一个框架页(减少数据的传输,减少网页的加载时间);
  技术简单,使用方便,主要应用于不需要搜索引擎来搜索的页面;
  方便开发,减少代码的重复率(比如页面的header,footer);

缺点:

会产生很多的页面,不易于管理;
  不易打印;
  多框架的页面会增加服务器得http请求;
  浏览器的后退按钮无效等;
  由于诸多的缺点,不符合标准网页设计的理念,已经被抛弃,目前的HTML5不再支持此标签。

附iframe的属性:


image.png

相关文章

  • iframe标签与a标签的使用

    iframe定义及用法(使用iframe页面会很卡不建议使用) iframe默认高度为50px,宽度为100px;...

  • 不打开新页面下载文件

    1. 使用IFrame 2. IFrame 模拟POST请求 3. 使用a 标签 4.XMLHttpRequest...

  • 文件导出二

    使用iframe 导出

  • 前端预览PDF,Excel,Word,TXT文件

    前端可以使用iframe可以直接预览文件,以下是几种依靠iframe实现在线预览的解决方案。