jhddxp 2008-12-16 10:41
浏览 119
已采纳

苦于javascript国际化问题

对HTML中javascript的一些提示信息,想对它进行国际化,但不知从何下手。

之前看过别人的资料说写两个message_en.js和message_zh.js,
如var Lang={hello: "Hello world!"} 和 var Lang={hello: "您好,世界!"} 将两个文件导入后,用alert(Lang[hello])调用,

但是发现不行,在firefox下能获取message中文件里的值,但是却无法在特定的语言环境下进行区分,而在IE下直接提示找不到Lang。

不知道上面的方法是不是我哪里漏写了,是否可行不?

而且我的网站是可以切换语言的,不知道如何进行国际化,请知情人士详细告知,小妹感激不尽。

(晕,发现咱没积分了,555,好心人帮帮忙)

  • 写回答

1条回答 默认 最新

  • samungtered 2008-12-16 11:15
    关注

    请参考 [url]http://www.iteye.com/topic/161713[/url]
    一种方法。
    1)首先使用下述代码得到浏览器的语言种类。
    if (navigator.language) //对于mozilla, Firefor
    language = navigator.language;
    else if (navigator.browserLanguage) //对于IE
    language = navigator.browserLanguage;

    2)通过1)所得到的语言种类,分别加载不同页面或者从资源文件中读取不同语言的字符串来使用

    注意:
    1)中的“浏览器的语言“指的是浏览器本身的语言,比如中文版的IE6,英文版的Firefox,而不是指浏览器中“查看"菜单-〉"字符编码“中的各种语言编码。
    你可以打开google页面之后,然后察看一下"字符编码“可以发现他使用的都是UTF-8,如果你要用"中文简体"编码来查看google.cn或者用"日文"来查看日文google.co.jp都会发现是乱麻。

    使用资源文件基本的步骤是
    1)书写资源文件如下,使用xml
    <?xml version='1.0' encoding='utf-8' ?>


    中文
    日本語
    Englisth


    ......

    ......

    2)得到浏览器语言种类 比如中文zh-CN, 日文ja,
    3)将资源文件中所有msg对应语言的字符串读入到一个数组中
    4)根据要现实的字符串的编号从数组中取出即可

    注意:所有页面应采取utf-8编码
    资源文件中的每种语言的字符串都应该是utf-8编码的。比如中文,用windows记事本写完后,另存为时选择格式为'utf-8'保存。
    详细见[转] [url]http://blog.csdn.net/wren2004/archive/2008/12/10/3489452.aspx[/url]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥20 sub地址DHCP问题
  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大