Javascript 多语言html SCORM内容的良好实践

Javascript 多语言html SCORM内容的良好实践,javascript,html,multilingual,scorm,Javascript,Html,Multilingual,Scorm,这更像是一个“理论”问题,而不是一个技术问题 我需要创建SCORM电子学习内容,纯HTML CSS Javascript,不使用任何服务器端技术,并且该内容必须是多语言的。两个主要要求:多语言,而不是服务器端语言 我的问题是,实现这一目标的最佳方式是什么?这些是显而易见的选择: 将所需语言的html文件复制到每个语言的不同文件夹中 加载所有语言文件(如xml或json中的.ex),解析HTMLDOM 并使用javascript对内容进行数字签名 在第二种情况下,以友好方式加载文件,有什么好方法?

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

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

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

  • 将所需语言的html文件复制到每个语言的不同文件夹中
  • 加载所有语言文件(如xml或json中的.ex),解析HTMLDOM 并使用javascript对内容进行数字签名
  • 在第二种情况下,以友好方式加载文件,有什么好方法?我不喜欢这样的想法,因为html中所有令人讨厌的脚本标记:

    <div>
    <p><script> document.write(some_translatable_variable) </script></p>
    </div>
    
    
    document.write(一些可翻译变量)

    我也不喜欢下面这样的东西,因为它需要很多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>
    
    //在json文件lang.es.json中
    “一些可翻译变量”:“Esto estáen español”;
    //在加载的langs.js中,使用jquery:
    $(“#some_id”).html(“”+some_translateable_variable+””);
    //html代码
    
    您可以使用基于JavaScript的模板引擎,例如,或

    基本上,在HTML中放置一个占位符,JavaScript将用文本替换占位符。您不需要管理大量ID

    如果需要,您可以插入不同语言的文本,但要注意布局问题,例如RTL语言和可能破坏布局的非常长的句子

    以下是一些关于客户端模板的有用文章:

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

    基本上,在HTML中放置一个占位符,JavaScript将用文本替换占位符。您不需要管理大量ID

    如果需要,您可以插入不同语言的文本,但要注意布局问题,例如RTL语言和可能破坏布局的非常长的句子

    以下是一些关于客户端模板的有用文章: