`
ynp
  • 浏览: 437870 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

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是参考的网上的代码,具体地址找不到了,见谅没有写出引用地址。
分享到:
评论

相关推荐

    FBT是一个来自Facebook的JavaScript国际化框架强大又灵活而且简单直观

    FBT(Facebook Blueprint Translation)是Facebook推出的一个JavaScript国际化框架,专为解决Web应用程序中的多语言支持问题...如果你正在寻找一种易于上手、高效且灵活的JavaScript国际化解决方案,FBT绝对值得考虑。

    Kiwi国际化全流程解决方案

    《Kiwi国际化全流程解决方案》 在当今全球化的背景下,软件产品的国际化和本地化已经成为不可或缺的环节,特别是对于JavaScript开发者来说,理解并掌握这一流程至关重要。本文将深入探讨Kiwi项目提供的国际化全流程...

    Javascript/Vue/React/ReactNative的国际化解决方案

    JavaScript、Vue、React...总结起来,JavaScript、Vue、React和React Native都有成熟且灵活的国际化解决方案。开发者可以根据项目规模、性能需求以及团队熟悉度选择合适的工具,实现一健式的多语言切换,提升用户体验。

    基于Javascript的voerka-i18n一健国际化全流程解决方案设计源码

    voerka-i18n是一个基于Javascript开发的一键国际化全流程解决方案,...该项目适用于Nodejs、VUE、REACT和uniapp等平台,为用户提供了一个高效、便捷的国际化解决方案,支持多平台浏览,具备良好的用户体验和实用性。

    js 国际化实现

    JavaScript(简称JS)国际化(i18n,国际化英文单词“internationalization”的缩写)是为网站或应用程序提供多语言支持的过程。这个过程涉及到将文本、日期、数字和其他文化特定的元素从源语言(通常是英语)转换成...

    前端开源库-i18next-node-fs-backend

    i18next是一个功能强大的JavaScript国际化解决方案,允许开发者轻松地在Web应用中实现多语言支持。而 `i18next-node-fs-backend` 的引入,使得我们可以从本地文件系统动态加载翻译资源,无需依赖其他服务或API。 **...

    js文件中实现国际化

    JavaScript(简称JS)是网页开发中的重要脚本语言,它为开发者提供了丰富的功能,其中之一就是实现国际化(i18n...同时,随着前端技术的发展,现代库和框架提供了更强大、更灵活的解决方案,简化了国际化实现的复杂度。

    react-reacttext一个简单的React国际化解决方案

    React-text是一个轻量级的库,专为React应用提供便捷的国际化(i18n)支持。这个库旨在简化文本管理和翻译过程,让开发者能快速地在不同语言环境中切换。 在React应用中,处理文本和翻译通常涉及以下几个关键点: ...

    JSP乱码 N种解决方案

    9. **国际化和本地化** - 使用`&lt;fmt:setLocale&gt;`和`&lt;fmt:setBundle&gt;`标签时,确保资源文件的编码与JSP页面保持一致。 10. **Eclipse或IDEA的项目编码设置** - 在开发环境中,确保项目的编码设置为统一的UTF-8,...

    优化国际化文案的Babel插件

    在现代Web应用开发中,尤其是面向全球用户的项目,国际化(i18n)和本地化(l10n)是必不可少的部分。为了有效地管理和优化这一过程,开发者常常使用各种工具和库,其中Babel插件就是一个重要的解决方案。本文将深入...

    jquery国际化Demo

    **jQuery 国际化(jQuery i18n)** ...总的来说,jQuery i18n 提供了一套简单易用的解决方案,帮助开发者实现多语言支持,使应用更具全球化视野。通过正确配置和使用,可以有效地提高网站或应用的国际化体验。

    前端国际化JS

    在前端开发中,"国际化"(i18n)是一个重要的概念,它涉及到如何让应用程序适应不同的语言和文化环境。JavaScript作为前端的主要编程语言,自然也需要支持这一特性。本压缩包包含两个版本的i18n库:i18n-mini-1.0.9...

    i18n国际化插件

    这个i18n插件的目的就是简化这个过程,提供一种方便、可扩展的解决方案。 总的来说,这个i18n国际化插件结合了Eclipse的易用性,Tomcat的稳定性和JavaScript的交互性,为开发者提供了一个强大的工具,帮助他们快速...

    微软国际化中英文插件.zip

    总的来说,微软国际化中英文插件是一个利用JavaScript技术实现的、基于云服务的跨语言沟通工具,它结合了现代机器翻译的先进算法,以及Web技术的便利性,为全球用户提供了一个高效的翻译解决方案。无论是开发者在...

    tap-i18n:流星的全面国际化解决方案

    流星的全面国际化解决方案 流星国际化 tap-i18n是一个软件包,它为Meteor应用程序和软件包提供了全面的解决方案,其目标是标准化软件包开发人员对其软件包进行国际化的方式。 参与tap:i18n: 由开发 为了 。 相关...

    前端 JQuery 网页国际化 中英繁切换的实现示例

    在前端开发中,实现网页的国际化是一个常见的需求,它...这些插件提供了一套完整的解决方案,包括语言资源管理、语言检测和切换功能。首先,你需要在HTML文件中引入JQuery库和对应的国际化插件脚本。例如: ```html ...

    基于Java核心的gonsin_i18n跨平台语言国际化方案设计源码

    该方案是利用Java核心构建的gonsin_i18n跨平台国际化工具,源码包含142个文件,涵盖54个Java源代码文件、18个XML配置文件、11个PNG图像文件、10个JSON文件...该方案旨在提供一个简单易用的跨平台语言国际化解决方案。

Global site tag (gtag.js) - Google Analytics