I want to use a internationalization option at my jQuery Mobile and jQuery webside. I tried to generate an example with the documentation on http://i18next.com but it seems I failed. Does anybody has experiences with i18next?
Here my example:
index.html:
<html>
<head>
<meta http-equiv=content-type content=text/html; charset=ISO-8859-1>
<script src=jquery-mobile/jquery-1.6.4.min.js type=text/javascript></script>
<script src=jquery-mobile/jquery.mobile-1.0.min.js type=text/javascript></script>
<script src=js/i18next-1.5.6.min.js type=text/javascript></script>
<script src=js/translation.js type=text/javascript></script>
</head>
<body>
<div data-role=page id=page>
<div data-role=content>
<div id=headline1 data-i18n=headline></div>
<table width=100% border=0 id=menu1 class=menu>
<tr id=surname>
<td width=50% data-i18n=menu.surname></td>
<td width=50%> </td>
</tr>
<tr id=firstName>
<td width=50% data-i18n=menu.firstName></td>
<td width=50%> </td>
</tr>
</table>
</div>
</div>
</body>
</html>
Translation files:
/locales/de/translation.json
{
menu: {
surname: Name:,
firstName: Vorname:
},
headline: Daten:,
headline_1: Daten Allgemein:,
headline_2: Daten Speziell:
}
/locales/en/translation.json
/locales/dev/translation.json
{
menu: {
surname: Name:,
firstName: First Name:
},
headline: Data:,
headline_1: Daten Common:,
headline_2: Daten Specific:
}
/js/translation.js
$(document).ready(function(){
language_complete = navigator.language.split(-);
language = (language_complete[0]);
console.log(Sprache (root): %s, language);
i18n.init({ lng: language });
i18n.init({ debug: true });
$(.menu).i18n();
$(headline).i18n();
});
The translation for the menu I get is menu.name instead of expected Name:.
For the headline I get no translation but I expected Data: or Daten:.
If i try the following direct call I get no translation:
i18n.t(menu.surname, { defaultValue: Name:});
Does anybody know what the problem is? Or does anybody has a working example that fits what I try to do?