缺点

  1. iframe会阻塞主页面的onload时间,window 的 onload 事件需要在所有 iframe 加载完毕后(包含里面的元素)才会触发。在 Safari 和 Chrome 里,通过 JavaScript 动态设置 iframe 的 SRC 可以避免这种阻塞情况;
  2. iframe和主页面共享连接池,而浏览器对相同域的连接有限制,所以会影响页面的并行加载;
  3. iframe框架会让用户感到迷惑,如果框架个数多的话,会出现上下左右滚动条,体验感差;
  4. 搜索引擎不能很好的处理iframe中的内容,所以不利于SEO;
  5. 很多移动设备无法完全显示框架,设备兼容性差;
  6. iframe会增加服务器的http请求,对大型网站是不可取的;

优点

  1. iframe能够原封不动的把嵌入的网页展示出来;
  2. 如果有多个页面使用iframe,那么你只要修改iframe的内容,就可以实现调用的每一个页面内容的更改,方便快捷;
  3. 有一定的可重用性,比如网页的头部,底部,在多页面重用;
  4. 如果遇到加载缓慢的第三方内容如图标或者广告,可以用iframe来解决;