js使用i18n實現(xiàn)頁面國際化的方法
更新時間:2017年05月09日 09:14:55 作者:LH9898
本篇文章主要介紹了js使用i18n實現(xiàn)頁面國際化的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
頁面引用的插件
<script type="text/JavaScript" src="${path}/plugings/jQuery-easyui/jquery.easyui.min.js"></script> <script type="text/javascript" src="${path}/js/jquery.i18n.properties.min.js"></script>
以下是頁面引用的js
/** * 設置語言類型: 默認為中文 */ var i18nLanguage = "zh-CN"; /* 設置一下網(wǎng)站支持的語言種類 zh-CN(中文簡體)、en(英語) */ var webLanguage = ['zh-CN', 'en']; //獲取網(wǎng)站語言 function getWebLanguage(){ //1.cookie是否存在 if (jQuery.cookie("userLanguage")) { i18nLanguage = jQuery.cookie("userLanguage"); console.log("language cookie is "+i18nLanguage); } else { //2.1 獲取用戶設置的瀏覽器語言 var navLanguage = getNavLanguage(); console.log("user set browser language is "+navLanguage); if (navLanguage) { // 判斷是否在網(wǎng)站支持語言數(shù)組里 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); };
/** * 執(zhí)行頁面i18n方法 * @return * @author LH */ var execI18n = function(){ //獲取網(wǎng)站語言(i18nLanguage,默認為中文簡體) getWebLanguage(); //國際化頁面 jQuery.i18n.properties({ name : "common", //資源文件名稱 path : $.contextPath+"/i18n/"+i18nLanguage+"/", //資源文件路徑 mode : 'map', //用Map的方式使用資源文件中的值 language : i18nLanguage, cache:false, //指定瀏覽器是否對資源文件進行緩存,默認false encoding: 'UTF-8', //加載資源文件時使用的編碼。默認為 UTF-8。 callback : function() {//加載成功后設置顯示內(nèi)容 //以下是將要國際化的文字內(nèi)容 //退出 $("#logOut").html($.i18n.prop('logOut')); //用戶 $("#loginUser").html($.i18n.prop('loginUser')) } }); }
/*頁面執(zhí)行加載執(zhí)行*/ $(function(){ /*執(zhí)行I18n翻譯*/ execI18n(); console.log("網(wǎng)站語言: "+i18nLanguage); //國際化easyui changeEasyuiLanguage(i18nLanguage); });
國際化的文件存放路徑,zh-CN表示簡體中文;en表示英語;也可擴展其它語言,只要在i18n文件夾下添加對應的文件;key要一一對應,value則是文字的語言內(nèi)容
中文的common.properties文件內(nèi)容
login.userName=Username login.passWord=Password login.sub=Login login.reset=Reset login.anonymous=Anonymous
英文的common.properties文件內(nèi)容
login.userName=Username login.passWord=Password login.sub=Login login.reset=Reset login.anonymous=Anonymous
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:
相關文章
實例分析JS中的相等性判斷===、 ==和Object.is()
這篇文章主要給大家介紹了關于JS中相等性判斷===、 ==和Object.is()的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用JS具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧2019-11-11