Localization (jq1000)
jq1000.js gère la localisation des interfaces mobiles en utilisant le plugin jquery localize.
Pour cela :
- Vous devez inclure le code script du plugin.
<source lang="javascript"> <script type="text/javascript" src="js/jquery.localize.js"></script> </source>
- Votre page html doit inclure les boutons de sélection de langage.
<source lang="javascript">
<a href="#" class="languageButton ui-btn-minimini" data-language="fr" data-role="button" data-mini="true" data-icon="fr" data-iconpos="notext">fr</a> <a href="#" class="languageButton ui-btn-minimini" data-language="en" data-role="button" data-mini="true" data-icon="gb" data-iconpos="notext">en</a>
</source>
- Les fichiers de localisation doivent être placés dans un sous répertoire "localize" du répertoire de l'application
Exemple de fichier "home-fr.json" :
<source lang="javascript"> { "button": { "home": "Accueil", "back": "Retour", "newSearch": "Nouvelle recherche", "connect": "Connecter", "disconnect": "Déconnecter", "clearCache": "Effacer le cache", "save" : "Sauvegarder", "delete" : "Supprimer", "send" : "Envoyer", "reset" : "Réinitialiser" }, "app" : { "offLineTitle" : "L'application n'est pas connectée", "offLineContent": "Cette fonction n'est disponible qu'en mode connecté", "connectTitle" : "Connexion au serveur", "styleTitle" : "Sélection du thème", "selectPicture": "Sélectionez une photo" },... } </source>
Comment localiser dynamiquement un élément
Les éléments statiques sont automatiquement localisés au changement de langage, pour les éléments dynamiques utilisez le code suivant :
<source lang="javascript">
if (expenses.count==0) {
var $li = $('
There is no waiting expense
').localize("localize/home", {language:$.l1000.appData.language}). appendTo($li.get(0));
</source> }