例如,当Internet Explorer必须渲染一千个div的网页时,Internet Explorer会开始窒息吗?
解决方法
我创建了一个简单的PHP脚本,吐出x数量的5px x 5像素的inline-block div来测试浏览器的稳定性和页面滚动能力.
在IE9,Firefox和Chrome页面上的1000个div上没有任何问题,甚至在滚动时甚至不会打嗝.
在10,000 divs IE9和Chrome能够滚动一个几乎不明显的延迟,仍然在我的书中的“可接受的”范围内,但是Firefox开始更明显地滞后,直到你觉得滚动条跳到位置比它应该半秒钟.
有趣的是,10,000 div和100,000之间的性能差异并不像你想像的那么大. IE9和Chrome在滚动时几乎不可察觉的延迟(Chrome的两个更平滑),Firefox的延迟非常明显,可能会被认为是恼人的,但仍然很有效(即,t崩溃).
现在在页面上的50万个divs终于开始变得有趣了. IE9崩溃并尝试重新启动(在同一页上,当然)并再次崩溃,此时我关闭它,重新启动,并再次尝试确保相同的结果再次发生.它做了.
Chrome保持稳定,但由于极度延迟,滚动页面几乎不可能.
最大的惊喜是Firefox,浏览器大小在100,000 divs大约相同在500,00 divs滚动不顺利,但它的方式,比Chrome更好.
令人惊讶的是,一个页面上的1,000,000个div的结果几乎相同Firefox处理它们没有崩溃,仍然可以滚动,虽然’chunky’. IE9崩溃了而Chrome可以加载页面,但变得非常慢,几乎无法使用.
我知道这不是一个科学研究,但我认为除了我自己以外,其他人也许是有趣的.
测试是在运行Windows 7的Dell Xeon处理器和4 gig RAM的Dell工作站上进行的.