语言HTML5应用程序

我正在开发一个带有CSS3和jQuery的HTML5应用程序。

我有一些我想用用户语言显示的文本。 你知道我该怎么做吗?

此应用程序将在Blackberry Playbook和其他移动设备上运行。

我不知道如何获取用户操作系统的语言,或者我必须把我的本地化字符串,等等

任何线索?


我将我的本地化字符串存储在JS文件中(每种支持的语言为1)。 防爆。 :

string-en.js:

 MyApp.STR = {"Hi":"Hi","By":"By", etc.};

string-fr.js:

 MyApp.STR = {"Hi":"Salut","By":"Par", etc.};

在启动时,我加载了关于导航器语言的正确文件:

 loadLocalizedString: function(langParam/*optional*/) {
    var language = window.navigator.language, lang; 
    console.log('loadLocalizedString with Navigator Language: ' + language);
    if (!langParam) {
        //Try to guess the best suited language
        if(language) {
             lang = language.substring(0,2); 
        } else {
             lang = 'en';
        }
        if($.inArray(lang, this.SUPPORTED_LANGUAGE) <= -1) {
            lang = 'en';//If the language is not available : english by default
        }
    } else {
        lang = langParam;
    }

    console.log('language: ' + lang);

    this.loadString('lib/string-'+lang+'.js');
},
    SUPPORTED_LANGUAGE : ["en", "fr", "es", "it"],
loadString:function(fileName) {
    try {
        $.ajaxSetup({async: false});
        $.getScript(fileName);//We don't use the async callback, because we need the translation in the next method
        $.ajaxSetup({async: true});

    } catch (e) {
        console.error('Error while loading : ' + fileName);
    }

}

并且要在应用中使用本地化的字符串:

   html = MyApp.STR.Hi+' '+userName+' !';

我会建议尝试使用Javascript来检测浏览器语言。 我没有看到使用HTML检测它的直接方式。

以下是解决该问题的链接:

无论如何检测使用JavaScript的操作系统语言?

链接地址: http://www.djcxy.com/p/57997.html

上一篇: language HTML5 application

下一篇: Accessing Linux /dev/USB as standard files to communicate with USB device