HTML5不再支持使用frame,iframe只有src 属性
一、使用iframe的优缺点
优点:
1、iframe能够原封不动地把嵌入的网页展现出来。
2、页面和程序分离;
3、如果遇到加载缓慢的第三方内容,如图标和广告等,可以用iframe来解决。
4、如果有多个网页调用iframe,只需要修改iframe的内容,就可以实现对调用iframe的每一个页面内容的更改,方便快捷。
缺点:
1、iframe有不好之处:样式/脚本需要额外链入,会增加请求。
另外用js防盗链只防得了小偷,防不了大盗。
2、iframe好在能够把原先的网页全部原封不动显示下来,但是如果用在首页,是搜索引擎最讨厌的.那么你的网站即使做的在好,也排不到好的名次!
如果是动态网页,用include还好点!
但是必须要去除他的< html>< head>< title>< body>标签!
3、在几个框架中都出现上下、左右滚动条时,这些滚动条除了会挤占已经非常有限的页面空间外,还会分散访问者的注意力。访问者遇到这种站点通常会立刻转身离开。他们会想,既然你的主页如此混乱,那么站点的其他部分也许更不值得浏览。
4、链接导航疑问。运用框架结构时,你必须保证正确配置所有的导航链接,如不然,会给访问者带来很大的麻烦。比如被链接的页面出现在导航框架内,这种情况下访问者便被陷住了,因为此时他没有其他地点可去。
5、调用外部页面,需要额外调用css,给页面带来额外的请求次数;
现在基本上都是用Ajax来代替iframe,iframe已渐渐退出了前端开发。
二、为什么少用iframe
iframes 提供了一个简单的方式把一个网站的内容嵌入到另一个网站中。但我们需要慎重的使用iframe。因为iframe会影响onload 事件的加载。
Iframes 阻塞页面加载
及时触发 window 的 onload 事件是非常重要的。当 onload 事件加载延迟后,它给用户的感觉就是这个网页非常慢。
window 的 onload 事件需要在所有 iframe 加载完毕后(包含里面的元素)才会触发。在 Safari 和 Chrome 里,通过 JavaScript 动态设置 iframe 的 SRC 可以避免这种阻塞情况。