我做的方式是創建一個特定語言的JSON文件來保存我的所有字符串。在這種情況下,english.json和spanish.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;
有意義嗎?
最後,我用西班牙文和英文寫了2個文件。然後我使用localStorage在index.html中設置首選項。謝謝你,你的回答引導了我。 – jorgevenegas
很高興我能夠幫助。我想我應該寫一小段代碼來讓這些人更容易。 –
不想成爲問題監測者,但是當我必須使用離線支持創建應用程序時,這項工作會如何? –