有人知道如何在网页加载时使用谷歌翻译将网页翻译成任何语言吗?
我不想要下拉菜单,我只想在加载时将网站转换为特定语言。我尝试了很多东西 http://code.google.com/p/jquery-translate/ 但一切都是徒劳的。任何好的建议将不胜感激。
<!--
This code will translate page contents automatically (without user input)
Settings located at line 9, current script will translate english to estonian
-->
<style>#google_translate_element,.skiptranslate{display:none;}body{top:0!important;}</style>
<div id="google_translate_element"></div>
<script>
function googleTranslateElementInit() {
new google.translate.TranslateElement({
pageLanguage: 'en',
includedLanguages: 'et',
autoDisplay: false
}, 'google_translate_element');
var a = document.querySelector("#google_translate_element select");
a.selectedIndex=1;
a.dispatchEvent(new Event('change'));
}
</script>
<script src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>
从这个要点: https://gist.github.com/artturik/15bed885bcec6faa95eb73acb2e2ae54
来自谷歌翻译帮助:
创建一个自动翻译您网站的链接 在不提示用户的情况下启用翻译器的页面,请使用 参数
.#googtrans(en|TARGET_LANG_CODE)
例如链接 http://translate.google.com/support/#googtrans(en|fr) 自动 将页面 http://translate.google.com/support/ 翻译成法语。
您可以通过给您网站 URL 从 https://translate.google.com 获取谷歌翻译代码。
像这样:
<div id="google_translate_element"></div><script type="text/javascript">
function googleTranslateElementInit() {
new google.translate.TranslateElement({pageLanguage: 'ar', layout: google.translate.TranslateElement.InlineLayout.SIMPLE}, 'google_translate_element');
}
</script><script type="text/javascript" src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>
它是目前正在使用的工作代码
<!DOCTYPE html>
<html lang="en-US">
<head>
<script type="text/javascript">
function googleTranslateElementInit() {
new google.translate.TranslateElement({pageLanguage: 'en', layout: google.translate.TranslateElement.InlineLayout.SIMPLE}, 'google_translate_element');
}
</script>
<script type="text/javascript" src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>
<script type="text/javascript" src="//translate.google.com/#en/hi/Hello"></script>
</head>
<style>
body > .skiptranslate {
//display: none;
}
.goog-te-banner-frame.skiptranslate {
display: none !important;
}
body {
top: 0px !important;
}
@media print {
#google_translate_element {display: none;}
}
</style>
<body>
<div id="google_translate_element"></div>
<p>This example displays a simple translate button, with no text.</p>
<p>This example displays a simple translate button, with no text.</p>
<div class="notranslate">
<p >This is a paragraph.</p>
<p >
A particle is kept at rest at the top of a sphere of diameter \(42 m\). When disturbed slightly,
it slides down. At what height \( h \) from the bottom, the particle will leave the sphere <br\>
(a) \( 14m \)
(b) \( 16m \)
(c) \( 35m \)
(d) \( 70m \)
</p>
</div>
</body>
</html>
它会翻译你的网页内容。如果您不想翻译任何特定的 div 内容,只需使用类 notranslate。那么谷歌翻译器将不会翻译该 div 内容。
谷歌翻译的问题是它有一些时间滞后。我尝试了 10,100 和 1000 毫秒,但只有 1000 毫秒(意味着 1 秒)工作得很好。我希望这个能帮到你。
将 google_translate_element 设置为 display:none 以隐藏它。
<script type="text/javascript">
function googleTranslateElementInit() {
new google.translate.TranslateElement({
pageLanguage: 'en',
includedLanguages: 'en,es',
}, 'google_translate_element');
setTimeout(function() {
// Set the default language to Spanish
var selectElement = document.querySelector('#google_translate_element select');
selectElement.value = 'es';
selectElement.dispatchEvent(new Event('change'));
}, 1000);
}
</script>
这将在页面加载时将页面翻译成西班牙语(“es”)。