Javascript 在android手机上的pageshow事件之后,人们看到了很多Jquery移动页面

Javascript 在android手机上的pageshow事件之后,人们看到了很多Jquery移动页面,javascript,android,jquery,jquery-mobile,cordova,Javascript,Android,Jquery,Jquery Mobile,Cordova,我正在使用Jquery Mobile构建cordova/phonegap应用程序。我的应用程序现在感觉非常迟钝,我发现主要原因是页面只有在我看到pageshow事件被触发一秒钟后才会显示。理想情况下,我希望它在pageshow事件触发时显示 此外,在此期间(在实际显示页面之前的pageshow之后),如果我在某个点触摸页面,它会在该点应该出现的项目上触发ontouch事件。因此,页面已经存在,但可能需要花费一些时间来呈现 您知道如何使用JQuery Mobile加快此页面的渲染速度吗?我可以使用

我正在使用Jquery Mobile构建cordova/phonegap应用程序。我的应用程序现在感觉非常迟钝,我发现主要原因是页面只有在我看到pageshow事件被触发一秒钟后才会显示。理想情况下,我希望它在pageshow事件触发时显示

此外,在此期间(在实际显示页面之前的pageshow之后),如果我在某个点触摸页面,它会在该点应该出现的项目上触发ontouch事件。因此,页面已经存在,但可能需要花费一些时间来呈现

您知道如何使用JQuery Mobile加快此页面的渲染速度吗?我可以使用自定义JQuery Mobile builder做些什么来帮助JQuery Mobile不做不需要的事情吗

请注意,我已使用关闭应用程序上的全局转换

$.mobile.defaultPageTransition = 'none';

对于触摸事件,移动浏览器的延迟为300毫秒。要禁用此功能,可以使用fastclick。它可以消除应用程序中300毫秒的延迟

这也可以帮助您加快工作速度


浏览器等待300毫秒来检查用户是否完成了一次单击或将要进行双选项卡。如果用户在300毫秒之前未再次触摸,则视为单击一次。。否则它会被视为双标签。

只需发布另一个答案,因为我认为这将是您更新问题的解决方案

如果我对问题的理解是正确的,禁用DOM缓存将解决问题

$(document).bind("mobileinit", function(){
    $.mobile.page.prototype.options.domCache = false;
});

我的回答有道理吗?嗨@Purus,谢谢你的回答。但我的问题不同。我理解300毫秒的延迟,我正在努力解决这个问题。我的问题是,点击已经发生,页面已经更改-新页面上的pagebeforeshow和pageshow事件已经触发,但我还没有看到新页面。在这之后的某个时候它会出现。另外,我注意到这种延迟在更好的手机上较小,而在更慢的旧手机上更多启用DOM缓存?如果是这样的话,页面将从缓存中显示,使页面看起来是空的。是的,domcache已经为一些页面启用,我已经删除了它,但它似乎没有帮助。页面在pageshow事件触发后仍然显示很多内容。我使用上面的语句全局禁用了缓存,并从HTML中删除了所有数据dom cache=“true”。我认为没有任何缓存存在。