Scroll in phonegap -2.9.0期间出现白屏?

时间:2013-09-13 12:03:45

标签: javascript jquery jquery-mobile cordova

我正在使用:

    <!DOCTYPE html>
    <html lang="en" dir="ltr">
 <head>    
    <link rel="stylesheet" href="css/lib/jquery.mobile.structure-1.3.2.min.css"/>
    <link rel="stylesheet" href="css/lib/jquery.mobile.theme-1.3.2.min.css"/>
    <link rel="stylesheet" href="css/lib/jquery.mobile-1.3.2.min.css"/> 
    <script type="text/javascript" src="js/lib/jquery-1.9.1.min.js"></script>
    <script type="text/javascript" src="js/lib/jquery.mobile-1.3.2.min.js"></script>
    <script type="text/javascript" charset="utf-8" src="js/lib/cordova.js"></script>
</head>
<body>
    <div data-role="page" id="assignedProposalPg" style="margin-top: 0px;">
    <div data-role="content">
    <div id="assignedPropList"> </div>
    </div>
    </div>
</body>

在file.js中我写了以下代码获取所有值,但只有在滚动期间出现的白色屏幕

function fillData()
{ 
     for (var i = 0;i < obj.Proposal.length; i++) 
{
     var htmlString = '<fieldset data-role="controlgroup">';    
     var fieldId = 'ap' + i;
     proposalIds += obj.Proposal[i].id + ',';
     htmlString += '<input type="radio" name="assigned_proposal_id" id="' + fieldId + '" value="' +          obj.Proposal[i].enquiry_no + ',' + obj.Proposal[i].id + '"/><label for="' + fieldId + '" >' + obj.Proposal[i].enquiry_no + '-' + obj.Proposal[i].caller_name + '-' + obj.Proposal[i].post_code + '</label>';
}
     htmlString += '</fieldset>';
     $("#assignedPropList").empty().append(htmlString).trigger('create');
}

为什么会这样?      添加了情况issue description

的视频

1 个答案:

答案 0 :(得分:0)

视频真的让我明白了。谢谢。问题在于,设备存在大量数据,无法跟上它并因内存而呈现它。您最好的选择是对数据进行分页,一次只加载25条记录。然后添加前进和后退按钮以加载下一个/上一组记录。如果数据存储在本地,那么您没有问题。如果您通过json远程获取数据,那么只获取数据一次并将其加载到数组中。然后使用您的分页设置迭代数组。

相关问题