-webkit-overflow-scrolling:touch - iOS 7 iPAD的大量内存使用

时间:2014-09-12 01:12:12

标签: css ios7 webkit scroll momentum

我正在开发一个在某些页面上非常重要的网站。当在具有较低内存的较旧版本的iPad(使用iPad 3进行测试)上查看时,Safari浏览器将耗尽内存并在导航到这些页面时崩溃。在崩溃期间,Safari正在经历内存峰值,总虚拟内存大约达到900 MB。

调试之后,我发现此问题的主要原因是以下用于在Web浏览器上启用动量滚动的CSS属性。从样式表中删除此CSS属性可将总虚拟内存占用空间减少大约300MB并稳定我的应用程序。

.class1,
.class2,
.class3
{
    -webkit-overflow-scrolling: touch;
}

然而,删除这种CSS样式的明显副作用是我在我的网页上滚动的动力,我们恢复到本地Safari滚动,这不是一个非常好的用户体验。

我正在寻找一种方法来在我的页面上启用动量滚动,内存占用更少,因此我的应用可以在较旧版本的平板电脑上运行。

我注意到这个问题在iOS 7和iOS 6上更糟糕 - 我希望iOS 8能解决这个问题,我可以推动我的客户升级作为一个选项。

这是一个已知的问题--webkit-overflow-scrolling:touch;内存密集吗?我在网上找不到这个。我认为问题是当我将CSS属性应用于包含div时,它会继承到页面上的所有子元素。我想知道我是否阻止了所有子元素的继承,如果这有助于解决问题,或者这是否会打破完全滚动的势头?

非常感谢任何建议。

0 个答案:

没有答案