【发布时间】:2012-06-07 12:31:28
【问题描述】:
我正在开发一个多语言 iOS/Android 应用程序并使用 xml 文件来获取我的翻译。翻译函数查找 i18n-xxx 类,并用 xml 文件中的文本替换具有该类的 html 元素的文本。
例子:
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 将简单的选择翻译成一大段代码,我还没有确定我应该翻译什么元素以及如何翻译。
有什么建议吗?
【问题讨论】:
-
信息不足。发布您的来源。
标签: javascript jquery jquery-mobile cordova