多言語のiOS/Androidアプリで作業しており、xmlファイルを使用して翻訳を取得しています。翻訳関数はi18n-xxxクラスを探し、html要素のテキストをそのクラスのテキストをxmlファイルのテキストに置き換えます。
例:
HTML:
<a href="url.html" data-role="button" class="i18n-my-button">Button</a>
xmlファイル:
<translation id="i18n-my-button">
<en>Button</en>
<sv>Knapp</sv>
</translation>
Javascript:
...
$(xml).find("translation").each(function() {
...
var id = $(this).attr("id"); //i18n-my-button
var translation = $(this).find("sv").text(); //Knapp
...
$("." + id).find("span.ui-btn-text").text(translation);
});
このアプローチでは、ボタン、ラジオボタン、チェックボックスなどのほぼすべてのhtml要素を翻訳できます。しかし、私はフリップトグルスイッチの翻訳に失敗しています。
これが私が望む方法です:
<select name="slider" id="flip-a" data-role="slider">
<option value="off" class="i18n-off">Off</option>
<option value="on" class="i18n-on">On</option>
</select>
他のhtml要素と同じ機能を使用して、「Off」と「On」を「Av」と「På」に変換できるようにしたい。問題は、jQuery Mobileが単純な選択を巨大なコードブロックに変換することであり、変換する必要のある要素とその方法をまだ特定していません。
助言がありますか?