如果你只是想寻找一种方法,让你的网站可以用其他语言浏览,我强烈建议你使用谷歌翻译工具。我只是把它添加到主题中:
<div id="google_translate_element"><span id="trans">Translate: </span></div>
您可以在css中隐藏Google徽标和时髦的颜色:
.goog-logo-link{display:none;}
我没有调用Google Translate js,而是复制返回脚本并将其添加到我的主js文件中。
Edit
谷歌提供
embed code 要在您的网站上使用:
<div id="google_translate_element"></div><script>
function googleTranslateElementInit() {
new google.translate.TranslateElement({
pageLanguage: \'en\',
layout: google.translate.TranslateElement.InlineLayout.SIMPLE
}, \'google_translate_element\');
}
</script><script src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>
第一行:
<div id="google_translate_element"></div>
可以放置在要显示“翻译”下拉框的位置:
第一组<script>
标记是语言和布局选项。最后一组<script>
标记调用更多javascript,在加载dom时,Google会在html中内联插入这些javascript。为了加快这个过程并避免额外的http请求和内联脚本,我删除了最后一个调用,并将Google返回的代码添加到我使用的“master”js文件中,该文件包含所有自定义javascript,并合并到一个文件中。Google返回的代码是:
(function(){var d=window,e=document;function f(b){var a=e.getElementsByTagName("head")[0];a||(a=e.body.parentNode.appendChild(e.createElement("head")));a.appendChild(b)}function _loadJs(b){var a=e.createElement("script");a.type="text/javascript";a.charset="UTF-8";a.src=b;f(a)}function _loadCss(b){var a=e.createElement("link");a.type="text/css";a.rel="stylesheet";a.charset="UTF-8";a.href=b;f(a)}function _isNS(b){b=b.split(".");for(var a=d,c=0;c<b.length;++c)if(!(a=a[b[c]]))return false;return true}
function _setupNS(b){b=b.split(".");for(var a=d,c=0;c<b.length;++c)a=a[b[c]]||(a[b[c]]={});return a}d.addEventListener&&typeof e.readyState=="undefined"&&d.addEventListener("DOMContentLoaded",function(){e.readyState="complete"},false);
if (_isNS(\'google.translate.Element\')){return}var c=_setupNS(\'google.translate._const\');c._cl=\'en\';c._cuc=\'googleTranslateElementInit\';c._cac=\'\';c._cam=\'\';var h=\'translate.googleapis.com\';var b=(window.location.protocol==\'https:\'?\'https://\':\'http://\')+h;c._pah=h;c._pbi=b+\'/translate_static/img/te_banner_bk.gif\';c._pci=b+\'/translate_static/img/te_ctrl.gif\';c._phf=h+\'/translate_static/js/element/hrs.swf\';c._pli=b+\'/translate_static/img/loading.gif\';c._plla=h+\'/translate_a/l\';c._pmi=b+\'/translate_static/img/mini_google.png\';c._ps=b+\'/translate_static/css/translateelement.css\';c._puh=\'translate.google.com\';_loadCss(c._ps);_loadJs(b+\'/translate_static/js/element/main.js\');})();
这主要是出于性能方面的原因,以避免额外的请求,并避免网站必须与Google进行通信,除非从下拉框中选择语言。
可以使用css自定义下拉框。例如,下面是我如何在使用该框的站点上显示该框。