javascript国际化解决方案

javascript国际化解决方案

-----》中文国际化资源文件MessageResource_zh_CN.js


var resource={
hello :"你好,世界!",
user:"小明"
};


-----》英文国际化资源文件MessageResource_en_US.js


var resource={
hello :"HELLO,WORLD!",
user:"xiao ming"
};


-----》创建国际化文件调用方法


insertJS();
function getCookie(objName) {// 获取指定名称的cookie的值
var arrStr = document.cookie.split("; ");
for (var i = 0; i < arrStr.length; i++) {
var temp = arrStr[i].split("=");
if (temp[0] == objName) {
return unescape(temp[1]);
}
}
return "";
}

function insertJS() {
var language = getCookie("language");
if (language.indexOf("en_US") > -1) {
document.writeln('<script type="text/javascript" src="MessageResource_en_US.js"></script>');
} else if (language.indexOf("zh_CN") > -1 || language == "") {
document.writeln('<script type="text/javascript" src="MessageResource_zh_CN.js"></script>');
}
}

function getInternationalizationJs(key) {
return resource[key];
}


-----》设置Cookie


Ext.onReady(function(){
Ext.get(btn1).on('click',function(){
alert(getInternationalizationJs("user"));//直接调用方法。
})
Ext.get("btnzh").on('click',setCookie)
Ext.get("btnen").on('click',setCookie)
});

function setCookie(){
switch(this.id){
case("btnzh"):
document.cookie = encodeURI("language") + "=" +encodeURI("zh_CN") + ";expires=" + new Date(new Date().getTime()+(1000*60*60*24*30)).toUTCString();
break;
case("btnen"):
document.cookie = encodeURI("language") + "=" +encodeURI("en_US") + ";expires=" + new Date(new Date().getTime()+(1000*60*60*24*30)).toUTCString();
break;
}
window.location.reload(); //页面刷新
}


-----》html文件


<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>js国际化测试程序</title>

<link rel="stylesheet" type="text/css" href="../resources/css/ext-all.css" />
<!-- GC -->
<!-- LIBS -->
<script type="text/javascript" src="../adapter/ext/ext-base.js"></script>
<!-- ENDLIBS -->
<script type="text/javascript" src="../ext-all.js"></script>
<script type="text/javascript" src="i18n.js"></script>
<script type="text/javascript" src="temp.js"></script>

</head>
<body>
<input type="button" id="btn1" value="test"> <br>
<input type="button" id="btnzh" value="中文设置"> <br>
<input type="button" id="btnen" value="英文设置"> <br>
<div id="mydiv">xxxx</div>
</body>
</html>

i18n.js是参考的网上的代码,具体地址找不到了,见谅没有写出引用地址。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值