var language;
$(function(){
if("chinese"==language){
$("select[name='language']").val("chinese");
}
language=getCookie("language");
if("chinese"==language){
chineseLabel();
}
var i18nsectionList=$(".ion18section");
for(var i=0;i<i18nsectionList.length;i+=1){
var section_content=$(i18nsectionList[i]).html();
var section_result=lang_section.getChineseInform(section_content,language);
$(i18nsectionList[i]).html(section_result);
}
});
function chineseLabel(){
var ino18List=$(".ion18");
var ishaveValue=true;
for(var i=0;i<ino18List.length;i+=1){
var content=$(ino18List[i]).val();
if(ino18List[i].localName=="option"){
content="";
}
if(!content){
content=$(ino18List[i]).html();
ishaveValue=false;
}
var result= lang.getChineseInform(content);
if(!ishaveValue){
$(ino18List[i]).html(result);
}else{
$(ino18List[i]).val(result);
}
ishaveValue=true;
}
}
function getLabelNameForI18n(labelName){
if("chinese"==language){
return lang.getChineseInform(labelName);
}else{
return labelName;
}
}
function getSectionMessegeForI18n(labelName){
return lang_section.getChineseInform(labelName,language);
}
/***针对页面中标题等英文需要翻译时的国际化的实现方式,messege保存的信息 Key:对照前面是 英文语句的去掉空格,将一些非法字符
* 转义,变小写等处理后的字符串,value:对应的中文名
*/
var lang={
messege:{
home:"主页",
manager:"后台管理",
help:"帮助",
},
getChineseInform:function (name){
var content= replaceAllSpace(name);
var first_char=content.charAt(0);
if(!isNaN(first_char)){
content="_"+content;
}
lowerName=content.toLowerCase();
return this.messege[lowerName];
}
}
/*
* 去掉字符串所有空格
*/
function replaceAllSpace(content){
while(content.indexOf("-")!=-1){
content=content.replace("-","_");
}
return content.replace(/\s/g,'');
}
/**针对页面中,大段英文需要翻译时的国际化的实现方式,用上述方式,key太长,不易比较
* messege 的key 命名规则:分为2种
* 一种为 页面名称+"_"+位置代号 如:fixingproducedure_node1 表示在fixingproducedure.html页面类的 node处
* 一种为 功能名称+messege 如:downloadmessege 表示在下载数据时的消息提示信息
* Please make sure a constant main power
is always on to the gateway box.
*/
var lang_section={
messege:{fixingproducedure_a:{
en_messege:". If the system is not working, please check on the following things:",
zh_messege:". 如果系统不能正常工作,请检查下列事项:"
},
},
getChineseInform:function (name,language){
var result=name;
var content= replaceAllSpace(name);
lowerName=content.toLowerCase();
if(language=="chinese"&&this.messege[lowerName]){
result= this.messege[lowerName].zh_messege;
}else{
result= this.messege[lowerName].en_messege;
}
return result;
}
}
分享到:
相关推荐
超简单web页面国际化多语言纯前端
struts2国际化 标签 页面 处理类 实例,特殊注意点说明
自己整理的sping boot国际化,切换中英文页面,切换时,将当前语言类型保存到session中,保证跳转页面时,语言类型沿用上个页面的语言类型
在struts2里实现国际化,完成登录页面的国际化(英文和中文)。
本篇文章主要介绍了js使用i18n实现页面国际化的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
前段页面的国际化,运用jquery-i18next js做国际化处理,i18n实现前端国际化,页面的多语言切换,本例切换了中英文,运用cookie存取使得刷新页面仍然保持当前语言 1、通过请求不同的语言文件,达到国际化前端的效果...
qt国际化多页面参考例子,环境为qtcreator,基于qt4.8,保证可用
亲测,可以用的前端页面国际化。步骤: 1 把代码放在工程中 2 在Html页面上加载js的路径要改对 3 打开页面,切换不同语言。
该Demo源码是博文《基于jQuery.i18n.properties 实现前端页面的资源国际化》里面的源码Demo。博文地址:http://blog.csdn.net/aixiaoyang168/article/details/49336709。 可供下载学习使用。
h5国际化demo[i18n实现] 支持多种语言,以及非H5的浏览器
简单的jquery国际化小案例,代码注释也很详细,容易上手,找了好多案例,都感觉不是很好,就仿造别人写了一个
简单,只实现了一个页面的国际化,其他的都是这样的,适合需要的初学者。
在struts2中,前端页面表示国际化的实现更加简单。简单的应用struts2提供的支持国际化的表达式即可快速方便的进行页面的国际化的实现。如何做呢?本文以英文和中文为例进行说明。
用springmvc做的一个国际化小例子,包含如何在页面和java代码中获取国际化资源
stati18n是用于管理静态页面国际化的工具。 它基于CSS的content属性,创建CSS数据文件。 要更改语言,基本脚本只需更改css包含的文件。 政治停止神经BreakDom。 仅一次Dom行更改(包括CSS)。 为什么很酷 对于...
一个使用Vue i18n对前端页面实现国际化多语言处理的简单、完整的例子。
java web 开发速学宝典第八章 李宁著 。实现国际化功能最直接的方法就是为每一个...为了解决这个问题,现在普遍的做法是将需要国际化的资源信息保存在资源文件中,并根据本地信息来读取相应资源文件中的国际化信息。
国际化登录采用了中文和英文两者之间的切换,页面上可以自由选择!
springMVC项目,项目中使用了从jeesite项目的UI界面,国际化配置,参考了网上的很多资料,再次非常感谢前辈们