phonegap 中的性能问题实际上源于 webview 必须呈现的内容量。从那里它分为两类:ios和android。
对于你,我有两个建议:
建议#1:
iOS webview 通常会执行 android 视图。我已经开发了几个带有一些基本 HTML 驱动动画等的 phonegap 应用程序。
对于 android,对于 android 设备来说最重要的是在代码级别或应用程序 manifest.xml 中禁用硬件加速。
我知道这听起来很有趣,但实际上它的作用是让 webview 使用更多的硬件加速。
对我来说,这最终看起来像这样:
<application android:debuggable="true" android:hardwareAccelerated="false" android:icon="@drawable/icon" android:label="@string/app_name">
建议2:
而不是 $('#app-view').empty(); $('#app-view').html($(view.el));
是否有可能做这样的事情:
$('#app-view1').css('display', 'none'); 或 $('#app-view1').remove();
然后通过简单地显示第二组内容进行跟进,而不是第一次完全呈现/下载 IE。$('#app-view1').css('display', 'block');
第二个建议的核心是简单地切换两个内容的可见性,而不是完全重置所有 html 内容。您甚至可以将内容设置为隐藏的 div,然后切换可见性。
我相信,当与您的硬件加速设置相结合时,更改应该会产生可衡量的差异。
越早将 html 加载到隐藏的 div 中越好,然后简单地使其可见。当它加载到隐藏的 div 中时,它会给 html 解析器时间来解析、下载资源等。