我有一个使用Angular Material的AngularJS应用程序和从外部API加载的数据。
这个应用程序没什么特别突破性的,我的所有测试在Chrome,Firefox和Safari中都运行得非常好。
然而,当我使用Internet Explorer时,所有的地狱都破裂了。该应用程序非常慢,CSS动画非常迟钝,应用程序完全无法使用。
我花了一天时间尝试了一些潜在的错误修正和调试,但我现在要胜过王牌。
我能看到的东西:
*{box-sizing: border-box}
)这是来自绩效检查员的输出,当我所做的全部是向下滚动md-virtual-repeat
时:
正如您所看到的,style calculation
占用了大量时间。
谷歌搜索已经取得了成功的解决方案。这里发生了什么?这是一个红色的鲱鱼,问题出在我的应用程序的其他地方(我的JS就像我想到的那样高效,而且我还测试了加载没有真正的数据,只有30个静态对象进入虚拟转发器 - 结果是一样的。)
答案 0 :(得分:2)
“滚动并将CPU加载到100%(IE11,Win10)”时,“样式计算”的问题大约需要700毫秒
在我的特定情况下,它是由包含“+”选择器的CSS规则引起的,例如
.menu li + li a {border: 0}
删除后 - 工作正常。
希望能节省几个小时。
答案 1 :(得分:1)
@ngDeveloper在评论中指出的解决方案是升级ngMaterial。我遇到了这个问题,而且导致问题的是positionElements。