首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Javascript从动态内容中更改语言

问使用Javascript从动态内容中更改语言
EN

Stack Overflow用户
提问于 2011-01-21 19:06:54
回答 2查看 5.9K关注 0票数 1

我的项目应该支持GUI的不同语言(西班牙语、英语、德语等)。我使用的是CodeIgniter,所以我对使用语言类的PHP视图没有任何问题。我可以在PHP上加载一些以前定义的vars,以便用不同的语言创建视图。

问题就在这里:

有些特性(实际上有很多)使用Javascript:针对某些项目的个性化上下文菜单、动态创建的不同DIVs等等。这些特性大多是动态创建的,因此我无法知道所选语言(我可以创建大量重复代码,每种语言都创建一个代码,但这太冗余了)。

我需要找到一种方法将这些内容翻译成用户先前选择的新语言。

例如:

用户右键单击和上下文菜单有以下选项(使用Javascript动态创建):

  • Hi
  • Goodbye

当用户将页面语言更改为“西班牙语”时,上下文菜单应显示:

  • Hola
  • Adios

有没有办法用不同的语言保存一些带有所有名字的变量,然后加载以创建菜单?

很抱歉有这么大的职位。我希望每个人都能帮我,或者给我一点小费。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-01-21 19:19:40

当您希望i18n (“国际化”的缩写)在服务器端语言和客户端Javascript中工作时,可以使用几个系统。

这是我为PHP和JavaScript找到的一个例子:http://doc.silverstripe.org/sapphire/en/topics/i18n

我用PHP、Ruby和Python做过这件事。一般来说,有一种方法是这样做的。创建一个文本库。这个库有指向文本特定部分的指针。在您的代码中,您可以使用该指针来引用该文本。上面的示例为您提供了一种在PHP中创建一个库的方法,该库可以编译成您可以在JavaScript中调用的JavaScript等价物。基本上,它完全将文案和其他文本从代码中分离出来。

我希望这能帮助你在路上。

票数 1
EN

Stack Overflow用户

发布于 2011-01-21 19:13:42

有没有办法用不同的语言保存一些带有所有名字的变量,然后加载以创建菜单?

我想你是在问你是否可以保存这些用户偏好?

如果是这样,则将其作为cookie存储在用户的计算机上。

如果您不是这个意思,并且您想要存储所有语言的变体,那么您可以将它存储在一个可以由javascript加载的数组中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4762763

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档