最近刚写了一个js的双语言,网站内容不多,我用的是json来保存要用到的提示信息,使用哪种语言我直接保存在cookie中,js初始化时读取cookie,多语言提示全部用变量来表示var lang = getCookie("cookieName"); // lang=en-US lang = lang.substring(5); var Mes = new JsMes(lang); function getCookie(name) // 获取cookie { var arr,reg=new RegExp("(^| )"+name+"=([^;]*)(;|$)");
if(arr=document.cookie.match(reg))
return unescape(arr[2]); else return null; } function JsMes(lang) { this.lang = lang; this.mesList = [{ "id": 0, "cn": "部门/人员选择", "tw": "部門/人員選擇", "en": "Department/Personnel selection" }, { "id": 1, "cn": "条件", "tw": "條件", "en": "criteria" }]; }JsMes.prototype.getMes = function (typeNum) { var mes = ""; switch (lang) { case "zh-cn": mes = this.mesList[typeNum].cn; break; case "en-US": mes = this.mesList[typeNum].en; break; case "zh-TW": mes = this.mesList[typeNum].tw; break; default: mes = this.mesList[typeNum].cn; } return mes; }//使用: alert(Mes.getMes(0));
lang = lang.substring(5);
var Mes = new JsMes(lang);
function getCookie(name) // 获取cookie
{
var arr,reg=new RegExp("(^| )"+name+"=([^;]*)(;|$)");
if(arr=document.cookie.match(reg))
return unescape(arr[2]);
else
return null;
} function JsMes(lang)
{
this.lang = lang;
this.mesList = [{
"id": 0,
"cn": "部门/人员选择",
"tw": "部門/人員選擇",
"en": "Department/Personnel selection"
},
{
"id": 1,
"cn": "条件",
"tw": "條件",
"en": "criteria"
}];
}JsMes.prototype.getMes = function (typeNum) {
var mes = "";
switch (lang) {
case "zh-cn":
mes = this.mesList[typeNum].cn;
break;
case "en-US":
mes = this.mesList[typeNum].en;
break;
case "zh-TW":
mes = this.mesList[typeNum].tw;
break;
default:
mes = this.mesList[typeNum].cn;
}
return mes;
}//使用: alert(Mes.getMes(0));