首页 > 代码库 > 从加载CNZZ不成功导致全页面Js失效看iframe的弊端

从加载CNZZ不成功导致全页面Js失效看iframe的弊端

一、iframe 阻塞 onl oad

    window的onload事件要等页面中所有内容加载完成,包括所有iframe加载完成以后才会运行,所以会给用户带来很大的“误解”,万一当iframe加载过慢,会让用户感觉网站速度很慢。

    解决方案:用javascript动态的给iframe赋值。

二、链接池

对每个 web 服务器来说,浏览器只打开极少的几个连接数。老的浏览器,包括 IE 6/7 和 Firefox 2,每个主机只有2个连接。在新的浏览器中,连接数增加鸟。Safari 3+ 和 Opera 9+ 增至4个,Chrome 1+ 、IE 8 及 Firefox 3 增至6个。

人们可能期望每个 iframe 有单独的连接池,但并非如此。在大多数浏览器中,连接被主页面和它的 iframe 所共享,这意味着有可能 iframe 中的资源占用了可用连接而阻塞了主页面的资源加载。如果 iframe 中的内容同等重要,或比主页面更重要,这很好。然而在通常情况下 iframe 中的内容对页面来说不太重要,iframe 占用连接数是不可取的。一个解决方案是在优先级更高的资源下载完成后再动态的给 iframe 的 src 赋值。

三、耗费性能

    创建iframe耗费的性能比其他DOM元素(包括style或script)多10-100倍

转载请注明来源:http://my.oschina.net/edire/

从加载CNZZ不成功导致全页面Js失效看iframe的弊端