2012-05-04 14 views
0

HTML5/JQueryとJava EEを使用してリッチWebアプリケーションを作成しています。このアプリケーションを英語とフランス語で表示する必要があります。私はHTML5の新機能ですから、簡単にできるかどうかわかりません。もしそうなら、どうすればいいですか?HTML5 Webアプリケーションで翻訳リソースを作成して使用する

私はFlexで非常に良い考えを持っています。この技術では、本当に簡単です。「辞書」を2つの異なるファイルに保存するだけです。たとえば :その後、

file english: 

title = Welcome to my app ! 

file French : 

title = Bienvenu dans mon appli ! 

と{resourceManager.getString(「ファイル」、「タイトル」)}、あなたが翻訳される用語を必要とするたびに呼び出します。

HTMLで同様の方法がありますか?

ご回答いただきありがとうございます。

答えて

0

あなたはjavascriptと似たようなことができます。 これを行う方法はたくさんありますが、私はそれをやり遂げる方法で投げます。

私は翻訳をいくつかのプレーンなjavascriptファイルに保存します。

lang_english.js

var language = 
{ 
    "title" : "Welcome to my app" 
} 

lang_french.js

var language = 
{ 
    "title" : "Bienvenu dans mon appli !" 
} 

あなたがHTMLの頭の中でこれらのファイルのいずれかをロードすることができます。

<script src="lang_english.js" type="text/javascript"></script> 

次に、あなたのアプリで作成できますresourceManagerオブジェクト:

その後、
resourceManager = {} 
resourceManager.getString = function(str) 
{ 
    return language[str]; 
} 

およびコール:

var title = resourceManager.getString('title') 

編集

動的ローディングのために、あなたは.jsonファイルに保存し、動的にユーザー言語選択に基づいてそれらをロードするためにjqueryを使用することができます。

var language = {}; 

$.get('lang_french.json', function(data) { 
    language = JSON.parse(data); 
}); 

lang_french.jsonファイルは次のようになります。

{ 
    "title" : "Bienvenu dans mon appli !" 
} 
+0

お返事ありがとうございますが、まだこの解決策について質問があります。 HTMLファイルに正しいファイルを指定する必要がある場合は、HTMLファイルを複製してフランス語と英語の両方を提供する必要があると思いますか?ユーザーの言語選択に応じて、適切なファイルまたは適切なリソースを動的にロードすることは可能ですか?再度、感謝します。 – Coralie

+0

ああ、はい、私の更新された答えをご覧ください。 jQueryでajax呼び出しを使用して、いくつかの 'json'をdinamically取得できます。 – mihai

関連する問題