在Phonegap文件AP​​I中添加JS功能

时间:2013-09-11 00:27:34

标签: javascript android cordova fileapi

我正在使用Phonegap的File API将数据添加到我的应用中。因为我不想使用静态路径,所以我在我的脚本中调用相对路径,这是我在loadHome函数中所做的。该脚本在没有loadHome()函数的情况下工作,但是它会产生错误。我真的不知道做这项工作的最佳方法是什么。任何提示或建议?

这是我的代码:

var pathHome;

function onFSSuccess(fileSystem) {
fileSystem.root.getDirectory("Android/data/be.z33.mobile",{create:true},loadHome,onError);
pathHome = fileSystem.root.fullPath+'/Android/data/be.z33.mobile/home.json';
}

function loadHome() {
var request = new XMLHttpRequest();
request.open("GET", pathHome, true);
request.onreadystatechange = function() {//Call a function when the state changes.
if (request.readyState == 4) {
if (request.status == 200 || request.status == 0) {

var home = JSON.parse(request.responseText);
var data = "<table cellspacing='0'>";
for (i = 0; i < home.length; i++) {
data += "<td>";
data += "<a data-ajax='false' href='" + home[i].link + "'/>";
data += "<figure><img src='" + home[i].img + "'/>";
data += "<figcaption>" + home[i].expo + "<br><em>";
data += home[i].datum + "</em></figcaption></figure></a></td>";
}
data += "</table>";
var twitter = document.getElementById("home");
twitter.innerHTML = data;
}
}
}
console.log("asking for home");
request.send();
}

function onError(e){
console.log("ERROR");
console.log(JSON.stringify(e));
}

function onDeviceReady() {
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, onFSSuccess, null);
}    

function init() {
document.addEventListener("deviceready", onDeviceReady, false);
}

0 个答案:

没有答案