国际化 i18n

 
 
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
<script src="jquery-1.8.2.min.js"></script>
<script src="jquery.cookie.js"></script>
<script src="jquery.i18n.properties.min.js"></script>
<script src="jquery.i18n.properties.js"></script>
</head>
<body>
<span style="font-family:Arial, Helvetica, sans-serif;">/**</span>
<input type="text" id="login" value="">
<input type="text" id="user" value="">
</body>
<script>
/* 设置语言类型: 默认为中文
*/
var i18nLanguage = "en";

/*
设置一下网站支持的语言种类
zh-CN(中文简体)、en(英语)
*/
var webLanguage = ['zh-CN', 'en'];

//获取网站语言
function getWebLanguage(){
//1.cookie是否存在
debugger;
if (jQuery.cookie("userLanguage")) {
alert(jQuery.cookie("userLanguage"));
i18nLanguage = jQuery.cookie("userLanguage");
console.log("language cookie is "+i18nLanguage);
} else {
//2.1 获取用户设置的浏览器语言
var navLanguage = chk_userlanguage();
console.log("user set browser language is "+navLanguage);
if (navLanguage) {
// 判断是否在网站支持语言数组里
var charSize = $.inArray(navLanguage, webLanguage);
if (charSize > -1) {
i18nLanguage = navLanguage;
// 存到缓存中
jQuery.cookie("userLanguage ",navLanguage, {
expires : 7
});
};
} else{
console.log("not navigator");
return false;
}
}

}


//国际化easyui中英文包
function changeEasyuiLanguage(languageName) {
// when login in China the language=zh-CN
var src =$.contextPath+"/plugings/jquery-easyui/locale/easyui-lang-"+languageName.replace('-','_')+".js";
console.log(src);
$.getScript(src);
};

/**
* 执行页面i18n方法
* @return
* @author LH
*/
var execI18n = function() {
//获取网站语言(i18nLanguage,默认为中文简体)
var str = location.href;

var arr = str.split("/");

delete arr[arr.length-1];

var dir = arr.join("/");
alert(dir+ i18nLanguage + "/");
getWebLanguage();
//国际化页面
jQuery.i18n.properties({
name: "common", //资源文件名称
path: dir+ i18nLanguage + "/", //资源文件路径
mode: 'map', //用Map的方式使用资源文件中的值
language: i18nLanguage,
cache: false, //指定浏览器是否对资源文件进行缓存,默认false
encoding: 'UTF-8', //加载资源文件时使用的编码。默认为 UTF-8。
callback: function () {//加载成功后设置显示内容
//以下是将要国际化的文字内容
//退出
$("#login").val($.i18n.prop('login.userName'));
//用户
$("#user").val($.i18n.prop('login.passWord'))
}
});
}

/*页面执行加载执行*/
$(function(){
/*执行I18n翻译*/
execI18n();
console.log("网站语言: "+i18nLanguage);
//国际化easyui
changeEasyuiLanguage(i18nLanguage);
});

var chk_userlanguage = function() {

/* get browser default lang */
if (navigator.userLanguage) {
baseLang = navigator.userLanguage.substring(0,2).toLowerCase();
} else {
baseLang = navigator.language.substring(0,2).toLowerCase();
}

/* language match */
switch(baseLang)
{
case "de":
/* german */
return 'German';
break;
case "en":
/* english */
return 'English';
break;
case "ja":
/* japanese */
return 'Japanese';
break;
case "zh":
/* 中文 */
return 'Chinese';
break;
default:
/* default no match */
}
};

</script>
</html>
 

jquery.cookie.js(源码地址:https://www.cnblogs.com/SongHuiJuan/p/8065289.html)

i18n 下载(https://github.com/jquery-i18n-properties/jquery-i18n-properties)

猜你喜欢

转载自www.cnblogs.com/anxbb/p/9105024.html