【问题标题】:Good practice for multilingual html SCORM content多语言 html SCORM 内容的良好实践
【发布时间】:2013-05-21 22:41:11
【问题描述】:

这更像是一个“理论”问题,而不是技术问题。

我需要创建 SCORM 电子学习内容,纯 HTML-CSS-Javascript,没有任何服务器端技术,并且该内容必须是多语言的。两个主要要求:多语言,而不是服务器端语言。

我的问题是实现这一目标的最佳方法是什么?这些是显而易见的选择:

  1. 在每种语言的不同文件夹中以所需语言复制 html 文件。
  2. 加载所有语言文件(即 xml 或 json 中的 ex),解析 html dom 并使用 javascript 动态分配内容。

在第二种情况下,动态加载文件,这样做的好方法是什么?我不喜欢这样的想法,因为 html 中的所有令人讨厌的脚本标签:

<div>
<p><script> document.write(some_translatable_variable) </script></p>
</div>

我也不喜欢下面这样的东西,因为它需要很多 id 并且很难维护:

//in json file lang.es.json
"some_translatable_variable" : "Esto está en español";

//In a loaded langs.js, using jquery:
$("#some_id").html("<p>"+some_translatable_variable+"<p>");


//the html code
<div id="some_id"> <!-- nothing here --> </div>

【问题讨论】:

    标签: javascript html multilingual scorm


    【解决方案1】:

    您可以使用基于 JavaScript 的模板引擎,例如 MustacheHandlebarsAngular

    基本上,您会在 HTML 中放置一个占位符,然后 JavaScript 会用您的文本替换占位符。您无需管理大量 ID。

    如果需要,您可以插入其他语言的文本,但请务必注意布局问题,例如 RTL 语言和可能会破坏布局的过长句子。

    以下是一些有关客户端模板的有用文章: http://coding.smashingmagazine.com/2012/12/05/client-side-templating/ http://engineering.linkedin.com/frontend/client-side-templating-throwdown-mustache-handlebars-dustjs-and-more http://net.tutsplus.com/tutorials/javascript-ajax/best-practices-when-working-with-javascript-templates/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-02-10
      • 2013-01-10
      • 2017-02-16
      • 1970-01-01
      • 1970-01-01
      • 2013-12-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多