【发布时间】:2015-04-01 19:16:05
【问题描述】:
这是我的代码的开始。它只是从 JSON 文件中填充一个无序列表。我尝试使用 Cordova FileReader 没有任何运气。
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
alert("Got deviceready");
var reader = new FileReader();
var fileSource = cordova.file.externalDataDirectory;
$.getJSON( "links.json", function( data ) {
$.each( data, function( key, val ) {
var $li = $("<li><a href='#'>"+val.title+"</a></li>");
reader.onloadend = function(evt) {
if(evt.target.result == null) {
$li.find("a").on("click", function(){ downloadPdf(val.title,val.url); });
} else {
$li.find("a").on("click", function(){ openPdf(val.title); });
}
};
// We are going to check if the file exists
reader.readAsDataURL(fileSource + val.title + ".pdf");
$("#linkList").append($li);
$("#linkList").listview('refresh');
});
});
}
如您所见,此示例使用downloadPdf(title, url) 函数添加列表项。如果确实存在,我希望列表项改为调用函数openPdf(title)。文件保存在cordova.file.externalDataDirectory + title + ".pdf"。
此代码不会将任何项目添加到我的列表中。
【问题讨论】:
标签: javascript android jquery cordova jquery-mobile