iframe的使用

2021-03-08  本文已影响0人  菲儿_cdd4

为什么要去了解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
上一篇 下一篇

猜你喜欢

热点阅读