我正在使用jQuery Mobile开发Phonegap应用程序。这是一个非常基本的应用程序,其目的是以西班牙语和英语显示有关大型组织的信息。在第一页上,该应用程序显示2个选项,西班牙语和英语。如果用户选择西班牙语,则显示的信息必须为西班牙语,反之亦然。
使用SQLite DB可能会在Windows手机上出现一些问题,因为它尚不支持(请参阅Phonegap Storage)。
也有File Storage选项。还有原始的JSON文件。
答案 0 :(得分:3)
我这样做的方法是创建一个特定于语言的json文件来保存我的所有字符串。在这种情况下,english.json和spanish.json。像json那样构造json:
{
help: "Help",
ok: "Okay"
}
在用户点击西班牙语按钮的应用的第一页上,它应该在localStorage中设置一个值。
localStorage.setItem("lang", "spanish");
然后在第二页中,一旦你得到“deviceready”事件,你应该使用XHR加载正确的json文件。
var request = new XMLHttpRequest();
request.open("GET", localStorage.getItem("lang") + ".json", true);
request.onreadystatechange = function(){//Call a function when the state changes.
if (request.readyState == 4) {
if (request.status == 200 || request.status == 0) {
langStrings = JSON.parse(request.responseText);
}
}
}
request.send();
现在,只要您想使用已翻译的字符串,就可以从langStrings中获取它。
langStrings.ok;
有意义吗?
答案 1 :(得分:0)