2013-02-07 28 views
7

我目前正在开发一个Web应用程序,主要集中在Chrome 24.01312.57和IE10。在以前的浏览器中,我遇到了很大的延迟。然而,后者几乎没有任何滞后,这与所有人声称的情况完全相反。的Chrome 24 VS IE10滚动可怕的滞后

为了显示你的区别,我同时向下滚动Chrome网上应用店使用的是iPhone记录我的上网本的屏幕 - 这是谷歌本身产生的。

检测设备

  1. 2岁的网关上网本 - 单核英特尔凌动 - 1GB内存 - Win7的
  2. iPhone摄像头(没有很大的录音解决方案,但它是很容易看出其中的区别)
  3. 网站:https://chrome.google.com/webstore/category/home(我向下滚动颇有几分两个浏览器开始测试对于那些担心AJAX的前加载的内容减慢渲染)

结果

  1. 谷歌Chrome浏览器24(不扩展)向下滚动的网络商店: http://www.youtube.com/watch?v=njkRqiNJPIY
  2. Internet Explorer(无插件)10在同一页上:http://www.youtube.com/watch?v=B_E_9OzPers

注:看看鼠标光标和滚动缩略图 - 在IE10上,鼠标始终位于拇指上,而Chrome则位于全部位置,表示鼠标移动之间的高延迟和实际渲染。

底线:

在我结束之前,一定要明白,在谷歌浏览器,这些滞后得到日益放大作为该网站变得更加复杂和/或规格走低。然而,即使在这些条件下,IE10仍然推动FPS非常高。我也对Chrome时间表做了一些分析。在表明,FPS下降为你缩小到渲染需要多达〜900毫秒每帧(在谷歌网络商店),而IE10仍是流体光滑(和更好但它保留了平滑度上的原子上网本)

  1. 作为Web开发人员,是有一些CSS属性/ IES是导致Chrome浏览器渲染滞后的网页?
  2. 为什么Internet Explorer渲染速度如此之快?
  3. 有什么可以让Chrome浏览器像IE10一样快速渲染的步骤?

PS:错误报告:http://code.google.com/p/chromium/issues/detail?id=163092但目前没有最新进展。

+0

这就是关于Chrome的事情之一,这是一个沉重的野兽,非常渴望记忆。你有没有试过在那个Atom上运行Linux?您至少可以在操作系统中移动和加载内容,从而提高性能。 Win7 + Chrome只用1GB内存就可以完成它。 – elclanrs

+0

我也有一个非常强大的电脑,但似乎仍然有滞后,而IE10就像在240Hz电视上观看电影。这个测试是在定制/定制网站上完成的,以测试每个网站的性能 - 具有大量的边框半径和方块阴影。 :P – bluejamesbond

+0

我的第一个猜测应该是一个(或更多!)花哨的'-webkit'属性让Chrome变慢,而IE10只是忽略它。 –

回答

11

更新:Chrome的性能问题早已解决。

铬在绘画方面挣扎,特别是在高分辨率(如2560x1440及以上)下。诸如Chrome网上应用店,Facebook等很多网站都显示出明显的滚动滞后。在这些网站上滚动时,IE10在我的显示器上保持120 fps。

+0

算上我作为该类别的第二人。 – pilau

+0

那么任何不同意你的人都是“疯狂的粉丝”? IE浏览器始终是最糟糕的浏览器之一 - 这就是为什么我(和许多其他人)停止使用它。几乎在所有方面它都比Firefox/Chrome慢,HTML5的合规性也很糟糕。有一段时间我和Firefox一起去了,因为它比IE好得多。最终,我转向使用Chrome,因为Web开发具有卓越的本地工具。这不是关于成为一个“粉丝男孩”。这是关于为工作选择最好的工具。 – xtempore

+0

@xtempore从IE10开始,从纯粹的性能角度来看,IE浏览器的黄油平滑滚动甚至没有任何提示。如果您拥有高刷新率监视器,它可以以60,120或144 fps的速度流畅滚动。即使通过iPad,Surface Pro上IE11的触摸屏响应也无与伦比。其他浏览器口吃和滞后。作为一个无知的最终用户,我不关心标准的合规性。开发人员将使他们的网站在拥有90%以上市场份额的操作系统上工作。滚动平滑度是唯一对用户至关重要的因素。 – Monstieur

-2

这是对上网本的显卡!您几乎可以在屏幕上移动的过程中体验到类似的效果。 我有一台上网本...

要测试的网络坠毁Chrome浏览器,直到不久前......

+2

怎么这个“显卡”不会落后于IE10呢? – Sebas

2

我刚刚解决了类似的问题。

显然,Chrome对于重新计算样式不太聪明,除了速度非常慢,所以我专注于防止它重新计算任何东西。

无论何时滚动事件被触发,我都添加了“滚动”类,但如果它已经存在,Chrome会不断重新计算新样式。当我修改它是这样的:

if (!body.hasClass('scrolled')) { body.addClass('scrolled'); } 

铬突然经历了显著加速(仍然没有IE或者FF,但比以前好多了)