zoukankan      html  css  js  c++  java
  • iframe的用法

    有人说,iframe是能耗最高的一个元素,尽量减少使用。

    也有人说,iframe的安全性太差,尽量减少使用。

      

      虽然他们说的是真的,但是iframe的强大功能是不容忽视的,而且现在不乏公司正在使用它。

      <iframe> 标签规定一个内联框架。一个内联框架被用来在当前 HTML 文档中嵌入另一个文档。

      所有的主流浏览器都支持<iframe>标签。你可以把提示的文字放到 <iframe> 和 </iframe>里面,这样不支持 <iframe>的浏览器就会出现提示的文字。

    iframe 如何使用呢?

    通常我们使用iframe直接在页面嵌套iframe标签指定的src就可以了。

    比如:

        <!-- 
            <iframe> 标签规定一个内联框架
         这里写p 标签是为了看align的效果
    --> <p style="overflow: hidden;">这是一些文本。 这是一些文本。 这是一些文本。这是一些文本。 这是一些文本。 这是一些文本。 <iframe name="myiframe" id="myrame" src="external_file.html" frameborder="0" align="left" width="200" height="200" scrolling="no"> <p>你的浏览器不支持iframe标签</p> </iframe> 这是一些文本。 这是一些文本。 这是一些文本。这是一些文本。 这是一些文本。 这是一些文本。</p>

    iframe 的常用属性:

       name :  规定 <iframe> 的名称。
            width: 规定 <iframe> 的宽度。
            height :规定 <iframe> 的高度。
            src :规定在 <iframe> 中显示的文档的 URL。
            frameborder : 规定是否显示 <iframe> 周围的边框。 (0为无边框,1位有边框)。
            align :  规定如何根据周围的元素来对齐 <iframe>。 (left,right,top,middle,bottom)。
            scrolling : 规定是否在 <iframe> 中显示滚动条。 (yes,no,auto)

    上面代码中 iframe的src属性为自己本地的一个html页面

    代码如下:

    <body>
        <div id="div" style="height: 300px; background: #ddd;">这是一个外部文件里面的内容</div>
    </body>
    <script>
        var div = document.getElementById("div");
        console.log(div);
    </script>

    有什么交互的部分也是写到这个页面中,iframe会自动传到引入的页面的。

    那如何获取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不再支持此标签。

     查看 frame 的基本用法

      

  • 相关阅读:
    极速地将git项目部署到SAE的svn服务器上
    深入了解Javascript模块化编程
    自己实现的一款在线Javascript正则表达式测试器——JRE-Parser
    Javascript中的一种深复制实现
    如何循序渐进地学习Javascript
    handsontable实例----来源github
    HandsontableWithVue (一) 导入官方的汉化包
    Handsontable 入坑的开始
    开始前端的生活
    c3p0数据源的第一次尝试
  • 原文地址:https://www.cnblogs.com/wyhlightstar/p/7066153.html
Copyright © 2011-2022 走看看