在Android Phonegap中加载附加模板时,JavaScript点击需要时间

JavaScript click is taking time while loading appending a template in Android Phonegap

本文关键字:JavaScript 时间 Phonegap Android 加载      更新时间:2023-09-26

我有三个选项卡,单击其中的一个选项卡,我会激活该选项卡,并通过在html中添加模板来显示相应的数据
如果我没有将数据附加到html中,但在附加html时,单击不会使所选选项卡处于活动状态,直到附加html。我想立即反映点击事件

我的代码是这样的:

$("#sent, #all, #received").bind("click", function() {
    $("#sent, #all, #received").removeClass('active');
    $(this).addClass('active');     
    DashBoardManager.updateCommunications();    
});

DashBoardManager.updateCommunications= new function(){
       $("#communicationMainId").html('');
       $.tmpl('communicationTmpl',DashBoradManager.allCommunications)
                .appendTo("#communicationMainId");
}

我想您正在将数据附加到UI(主)线程上。考虑将主线程与数据处理线程分离,允许主线程加载并显示您的新选项卡以及附加数据的第二个线程,而不是在期间/之后。

编辑:以下是谷歌对此事的看法:

当您的应用程序响应用户交互执行密集工作时,除非您正确地实现您的应用程序。具体来说,如果发生在UI线程中,执行诸如网络之类的长操作访问或数据库查询将阻塞整个UI。当线程被阻止,无法调度任何事件,包括绘图事件。从…起从用户的角度来看,应用程序似乎挂起了