我有一个自定义滚动视图实现。它只是通过将滚动元素向左和向右转换来工作。
它在移动 Safari 上提供了相当不错的帧速率。问题是,一旦我转换了滚动条内的一些元素,帧速率就会突然下降。
这是演示。
如果您在 chrome 中查看它(启用“模拟触摸事件”),一切都会顺利进行,除了将纹理上传到 GPU 的前几分钟。
但是在 iOS6 iPad 上,只要视图中没有变形的元素,移动是流畅的。但是,如果您进一步向右滚动,我已经用 转换了一些元素scale3d()
,那么一切都会变得混乱。这就像它在每一帧上重新上传纹理一样。