在移动设备上使用jquery nicescroll进行非常慢的滚动

时间:2013-10-23 04:17:58

标签: jquery mobile scroll nicescroll

我正在使用twitter bootstrap开发一个单一的寻呼机网站。我使用jQuery nicescroll在部分内滚动(用户只允许在单击菜单项时滚动浏览特定部分)。当部分内容较少并且滚动顺畅但部分内部元素数量增加时,它可以正常工作,滚动速度非常慢。

jQuery代码:

jQuery("section").niceScroll({horizrailenabled:false,scrollspeed:"5"});
jQuery("section").getNiceScroll().hide();//to hide the scrollbar but allow scrolling

请建议。

1 个答案:

答案 0 :(得分:2)

移动内存非常少。很多DOM元素会导致速度变慢。减少DOM元素和样式可能会有所帮助。

我首先删除所有CSS以查看是否加快了速度。 box-shadows和border-raduis可以使用很多处理器。其他项目可能会减慢很多。

此外,您可以使用Safari 6.1或Chrome开发工具中的时间轴来查看重新计算样式和重新绘制屏幕的次数。重新涂抹太多也会减慢它的速度。

在移动设备上快速滚动的真正方法是为浏览器,DOM,网络和垃圾收集器进行大量自定义优化。查看PerfView的代码以查看一些优化(https://github.com/puppybits/BackboneJS-PerfView)。