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是参考的网上的代码,具体地址找不到了,见谅没有写出引用地址。
分享到:
相关推荐
FBT(Facebook Blueprint Translation)是Facebook推出的一个JavaScript国际化框架,专为解决Web应用程序中的多语言支持问题...如果你正在寻找一种易于上手、高效且灵活的JavaScript国际化解决方案,FBT绝对值得考虑。
《Kiwi国际化全流程解决方案》 在当今全球化的背景下,软件产品的国际化和本地化已经成为不可或缺的环节,特别是对于JavaScript开发者来说,理解并掌握这一流程至关重要。本文将深入探讨Kiwi项目提供的国际化全流程...
JavaScript、Vue、React...总结起来,JavaScript、Vue、React和React Native都有成熟且灵活的国际化解决方案。开发者可以根据项目规模、性能需求以及团队熟悉度选择合适的工具,实现一健式的多语言切换,提升用户体验。
voerka-i18n是一个基于Javascript开发的一键国际化全流程解决方案,...该项目适用于Nodejs、VUE、REACT和uniapp等平台,为用户提供了一个高效、便捷的国际化解决方案,支持多平台浏览,具备良好的用户体验和实用性。
JavaScript(简称JS)国际化(i18n,国际化英文单词“internationalization”的缩写)是为网站或应用程序提供多语言支持的过程。这个过程涉及到将文本、日期、数字和其他文化特定的元素从源语言(通常是英语)转换成...
i18next是一个功能强大的JavaScript国际化解决方案,允许开发者轻松地在Web应用中实现多语言支持。而 `i18next-node-fs-backend` 的引入,使得我们可以从本地文件系统动态加载翻译资源,无需依赖其他服务或API。 **...
JavaScript(简称JS)是网页开发中的重要脚本语言,它为开发者提供了丰富的功能,其中之一就是实现国际化(i18n...同时,随着前端技术的发展,现代库和框架提供了更强大、更灵活的解决方案,简化了国际化实现的复杂度。
React-text是一个轻量级的库,专为React应用提供便捷的国际化(i18n)支持。这个库旨在简化文本管理和翻译过程,让开发者能快速地在不同语言环境中切换。 在React应用中,处理文本和翻译通常涉及以下几个关键点: ...
9. **国际化和本地化** - 使用`<fmt:setLocale>`和`<fmt:setBundle>`标签时,确保资源文件的编码与JSP页面保持一致。 10. **Eclipse或IDEA的项目编码设置** - 在开发环境中,确保项目的编码设置为统一的UTF-8,...
在现代Web应用开发中,尤其是面向全球用户的项目,国际化(i18n)和本地化(l10n)是必不可少的部分。为了有效地管理和优化这一过程,开发者常常使用各种工具和库,其中Babel插件就是一个重要的解决方案。本文将深入...
**jQuery 国际化(jQuery i18n)** ...总的来说,jQuery i18n 提供了一套简单易用的解决方案,帮助开发者实现多语言支持,使应用更具全球化视野。通过正确配置和使用,可以有效地提高网站或应用的国际化体验。
在前端开发中,"国际化"(i18n)是一个重要的概念,它涉及到如何让应用程序适应不同的语言和文化环境。JavaScript作为前端的主要编程语言,自然也需要支持这一特性。本压缩包包含两个版本的i18n库:i18n-mini-1.0.9...
这个i18n插件的目的就是简化这个过程,提供一种方便、可扩展的解决方案。 总的来说,这个i18n国际化插件结合了Eclipse的易用性,Tomcat的稳定性和JavaScript的交互性,为开发者提供了一个强大的工具,帮助他们快速...
总的来说,微软国际化中英文插件是一个利用JavaScript技术实现的、基于云服务的跨语言沟通工具,它结合了现代机器翻译的先进算法,以及Web技术的便利性,为全球用户提供了一个高效的翻译解决方案。无论是开发者在...
流星的全面国际化解决方案 流星国际化 tap-i18n是一个软件包,它为Meteor应用程序和软件包提供了全面的解决方案,其目标是标准化软件包开发人员对其软件包进行国际化的方式。 参与tap:i18n: 由开发 为了 。 相关...
在前端开发中,实现网页的国际化是一个常见的需求,它...这些插件提供了一套完整的解决方案,包括语言资源管理、语言检测和切换功能。首先,你需要在HTML文件中引入JQuery库和对应的国际化插件脚本。例如: ```html ...
该方案是利用Java核心构建的gonsin_i18n跨平台国际化工具,源码包含142个文件,涵盖54个Java源代码文件、18个XML配置文件、11个PNG图像文件、10个JSON文件...该方案旨在提供一个简单易用的跨平台语言国际化解决方案。