前端国际化
来源:互联网 发布:淘宝5.9.5版本下载 编辑:程序博客网 时间:2024/05/18 00:44
国际化通过前端来做合适么?不知道
1、国际化资源文件
//en_US_lang.jsi18n = { btn: "i am a button", txt: "i am a text"}//zh_CN_lang.jsi18n = { btn: "我是按钮", txt: "我是文本"}
2、国际化方法 i18n.js
var lang = sessionStorage.getItem("Lang");if (lang == null) { var lan = window.navigator.userLanguage || window.navigator.language; lan =lan.toLowerCase(); var language; if (lan == "zh-cn") { language = "zh_CN"; } else if (lan == "zh-tw") { language = "zh_TW"; } else { language = "en_US"; } sessionStorage.setItem("Lang", language);}//多语言通用方法function GetI18N(key) { if (i18n && i18n[key]) { return i18n[key]; } else { return "$"; }}//国际化function i18nSetValue() { var elem = document.querySelectorAll("[i18nId]"); var len = elem.length; for (var i = 0; i < len; i++) { var el = elem[i]; var key = el.getAttribute("i18nId"); if (el.getAttribute("type") == "button") { el.innerHTML = GetI18N(key); } else{ var p = el.getAttribute("placeholder"); if (p != null) { el.setAttribute("placeholder", GetI18N(key)); } else { el.innerHTML = GetI18N(key); } } } var elem2 = document.querySelectorAll("[title]"); var len2 = elem2.length; for (var i = 0; i < len2; i++) { var el = elem2[i]; var key = el.getAttribute("title"); el.setAttribute("title", GetI18N(key)); }}//加載多語言文件document.write('<script type="text/javascript" src="/property/' + lang + '_lang.js"></script>');
3、html 页面
<script src="/js/jquery/jquery.js"></script><script src="/js/lang/i18n.js"></script>$(function () { i18nSetValue(); $("#i18n_zh_cn").click(function () { sessionStorage.setItem("Lang","zh_CN"); location.reload(); return false; }) $("#i18n_en").click(function () { sessionStorage.setItem("Lang","en_US"); location.reload(); return false; }) })<body> <a id="i18n_zh_cn" href="#" class="control-label">简体中文</a> <br/> <a id="i18n_en" href="#" class="control-label">英文</a> <br/> <button type="button" class = "btn btn-primary" i18nId = "btn"></button> <br/><br/> <input type="text" class="form-control" placeholder="txt" i18nId = "txt"> <br/><br/></body>
4、运行效果
阅读全文
0 0
- 前端国际化
- 前端国际化
- 前端国际化插件
- 前端国际化小结
- React-intl前端国际化
- 前端实现国际化
- 利用jquery做前端国际化
- JS 前端框架 AngularJS 国际化
- web前端的国际化 i18n
- js 前端实现国际化配置
- jquery i18n(前端国际化)
- 在struts2中,前端页面表示国际化
- 基于JavaScript纯前端的国际化解决方案
- web前端开发系列---jstl网站国际化
- jQuery之前端国际化jQuery.i18n.properties
- jQuery.i18n.properties实现前端国际化
- Web前端国际化之jQuery.i18n.properties
- jQuery之前端国际化jQuery.i18n.properties
- DOM
- 设计模式-代理模式
- 3DES加解密算法
- 快速排序
- java命令行HPROF Profiler
- 前端国际化
- 关于Linux 学习的整理
- Git学习笔记(4)----基本操作及命令(本地仓库篇)
- lintcode 通配符匹配 ac代码
- UINavigationController的侧滑返回遇到的坑
- shell中$(( ))、$( )与${ }的区别
- 探讨Android6.0及以上系统APP常驻内存(保活)实现-复活篇
- 京东抢购系统
- c# lambda表达式学习(3)