如何使用i18next翻译部分HTML文本?

时间:2014-12-23 15:41:55

标签: javascript html internationalization i18next

在这里完成i18next noob,所以请耐心等待!

我的HTML是:

<ul class="nav nav-sidebar">
  <li><a href="#">Sección 1.1</a></li>
  <li><a href="#">Sección 1.2</a></li>
  <li><a href="#">Sección 1.3</a></li>
</ul>
<input type="text" id="Doc" name="Doc" data-i18n="[placeholder]mykey" placeholder="Document" />

我用这个javascript代码加载我的翻译:

i18n.init(
    {
        lng: $.cookie("i18next"),
        fallbackLng: "es",
        debug: true,
        resGetPath: "dist/js/i18n/___lng__.js",
    },
    function (t) {
        $(document).i18n();
    }
);

如何在每个data-i18n上声明我的li标签,这样我只需要为内部HTML的“Sección”片段提供一个键,然后保留1.1,1.2,1.3? / p>

1 个答案:

答案 0 :(得分:1)

您需要将data-i18n标记添加到您的HTML

<a href="#" data-i18n="menu.home">Home</a>

我为你做了一个例子:

link to my jsbin

以下是您可以考虑的其他示例用法: http://i18next.com/pages/sample.html

或者如果您正在寻找嵌套用法,可以使用$t()

例如:

'en-US': { 
    translation: { 
      'menu': {
        'taipei': 'Taipei, $t(menu.country)',
        'tainan': 'Tainan, $t(menu.country)',
        'kenting': 'Kenting, $t(menu.country)',
        'country': 'Taiwan'
      }                           
    } 
  }

我已经更新了jsbin。希望这是你正在寻找的东西