我是靠谱客的博主 唠叨流沙,最近开发中收集的这篇文章主要介绍 网站国际化 前端翻译(多语言)解决方案前端翻译国际化,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

前端翻译国际化

标签: 网站国际化支持


在网站中加入:

<script>
var langPackage = {
"主题": "Title",
"下一页": "NextPage",
"末页": "LastPage",
"首页": " FirstPage ",
"上一页": " PreviousPage ",
"待办工作": "MyTasks",
"中": "Middle",
"每页": " EachPage ",
"条": " Record ",
"共": " Total ",
"页": " Page ",
"第": " Current ",
"工作主题": " ProcTitle"
};
/*
主调函数
在 Jquery的 .read方法里调用 ReplaceChildChs($(document));
或者页面的最后调用
ReplaceChildChs($(document));
*/
function ReplaceChildChs(nodeObj) {
// if($("#hdfUseLang").val()=="CN")return;
if (nodeObj.children().length > 0) {
nodeObj.children().each(function() {
ReplaceChildChs($(this));
//
if ($(this)[0].nodeName.toUpperCase() == "TD"){
FindChsAndReplaceIt($(this));
//
}
});
} else {
FindChsAndReplaceIt(nodeObj);
}
}
// 直接替换html 的一种设想,但总是报错
function JustReplaceChsDom(nodeObj) {
var pat = new RegExp("[u4e00-u9fa5]+", "g"); // 匹配中文的正则表达式
var str = $(nodeObj).html();
while ((arr = pat.exec(str)) != null) {
if (langPackage[arr[0]]) {
str = str.replace(arr[0], langPackage[arr[0]]);
}
}
$(nodeObj).html(str);
}
function FindChsAndReplaceIt(nodeObj) {
var pat = new RegExp("[u4e00-u9fa5]+", "g");
if ((nodeObj.text() || nodeObj.val() || nodeObj.attr("title")) &&
(pat.exec(nodeObj.text()) || pat.exec(nodeObj.val()) || pat.exec(nodeObj.attr("title")))) {
var str = ""
if (nodeObj.text()) {
str = nodeObj.text();
ReplaceValue(str, nodeObj, "text");
}
if (nodeObj.val()) {
str = nodeObj.val();
ReplaceValue(str, nodeObj, "val");
}
if (nodeObj.attr("title")) {
str = nodeObj.attr("title");
ReplaceValue(str, nodeObj, "title");
}
}
}
function ReplaceValue(str, nodeObj, attrType) {
var arr;
var pat = new RegExp("[u4e00-u9fa5]+", "g");
while ((arr = pat.exec(str)) != null) {
if (langPackage[arr[0]]) {
str = str.replace(arr[0], langPackage[arr[0]]);
if (attrType == "text") {
nodeObj.text(str);
} else if (attrType == "val") {
nodeObj.val(str);
} else if (attrType == "title") {
nodeObj.attr("title", str);
}
}
}
}
ReplaceChildChs($(document));
</script>

上面数组进行单词替换;
文章啥的最好还是有多语言的支持

translate翻译方式 需要翻墙


<div id="google_translate_element"></div>
<script>
function googleTranslateElementInit() {
new google.translate.TranslateElement({
pageLanguage: 'zh-CN',
layout: google.translate.TranslateElement.InlineLayout.SIMPLE
}, 'google_translate_element');
}
</script>
<script src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>
<!-- Begin TranslateThis Button -->
<div id="translate-this"><a href="http://translateth.is/" class="translate-this-button">Translate</a></div>
<script type="text/javascript" src="http://www.google.com/jsapi"></script>
<script type="text/javascript" src="http://x.translateth.is/translate-this.js"></script>
<script type="text/javascript">
TranslateThis();
</script>
<!-- End TranslateThis Button -->

整体项目思路:

国际化

文章同步发布到我的blog: 传送门

最后

以上就是唠叨流沙为你收集整理的 网站国际化 前端翻译(多语言)解决方案前端翻译国际化的全部内容,希望文章能够帮你解决 网站国际化 前端翻译(多语言)解决方案前端翻译国际化所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(73)

评论列表共有 0 条评论

立即
投稿
返回
顶部