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