前端翻译国际化
标签: 网站国际化支持
在网站中加入:
<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: 传送门