有人说,iframe是能耗最高的一个元素,尽量减少使用。也有人说,iframe的安全性太差,尽量减少使用。虽然他们说的是真的,但是iframe的强大功能是不容忽视的,而且现在不乏公司正在使用它。
<iframe>标签规定一个内联框架。一个内联框架被用来在当前HTML文档中嵌入另一个文档。
所有的主流浏览器都支持<iframe>标签。你可以把提示的文字放到<iframe>和</iframe>里面,这样不支持<iframe>的浏览器就会出现提示的文字。
iframe如何使用呢?
通常我们使用iframe直接在页面嵌套iframe标签指定的src就可以了。
比如:
<!--
<iframe>标签规定一个内联框架
这里写p标签是为了看align的效果-->
<pstyle="overflow:hidden;">这是一些文本。这是一些文本。这是一些文本。这是一些文本。这是一些文本。这是一些文本。<iframename="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>
<divid="div"style="height:300px;background:#ddd;">这是一个外部文件里面的内容</div></body><script>
vardiv=document.getElementById("div");
console.log(div);</script>
有什么交互的部分也是写到这个页面中,iframe会自动传到引入的页面的。
那如何获取iframe里面的内容呢?
variframe=document.getElementById("myrame");//获取iframe标签
variwindow=iframe.contentWindow;//获取iframe的window对象
varidoc=iwindow.document;//获取iframe的document对象
console.log(idoc.documentElement);//获取iframe的html
console.log("body",idoc.body);
但是,这里面是获取不到里面的DOM的,可以在URL中获取(也就是引入的html文件)
iframe的优缺点
优点:
重载页面时不需要重载整个页面,只需要重载页面中的一个框架页(减少数据的传输,减少网页的加载时间);
技术简单,使用方便,主要应用于不需要搜索引擎来搜索的页面;
方便开发,减少代码的重复率(比如页面的header,footer);
缺点:
会产生很多的页面,不易于管理;
不易打印;
多框架的页面会增加服务气得http请求;
浏览器的后退按钮无效等;
由于诸多的缺点,不符合标准网页设计的理念,已经被抛弃,目前的HTML5不再支持此标签。

本文转载自中文网

本文转载自中文网
如需转载,请注明文章出处和来源网址:http://www.divcss5.com/html5/h54133.shtml