10

我正在尝试在我的网站上包含谷歌网站翻译器。我想使用自动的东西,所以如果您的浏览器语言与页面语言不同,则会显示该栏。每次我选择自动显示模式时,它给我的代码都是“选项卡式”。谁能告诉我我做错了什么或提供正确的代码?

提前致谢。

编辑:

<div id="google_translate_element"></div>
<script type="text/javascript">
    function googleTranslateElementInit() {
        new google.translate.TranslateElement({pageLanguage: 'en', layout:     google.translate.TranslateElement.FloatPosition.TOP_LEFT},     'google_translate_element');
    }
</script>
<script type="text/javascript" src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>
4

8 回答 8

2

我在这里看到了另一个例子:

自动检测用户的首选语言和谷歌翻译

这有参数 autoDisplay: false,

为了在站点语言不匹配时仅获取翻译栏,我删除了容器,并使用了 autoDisplay: true,

当我使用另一种语言时,我得到了酒吧,但没有下拉菜单。

于 2014-12-04T13:16:52.287 回答
2

在试图弄清楚为什么 autoDisplay 无法正常工作时,即总是显示翻译菜单,我发现了 W3C 国际化检查器:http: //validator.w3.org/i18n-checker/

W3C 国际化检查器提醒我,Accept Headers 正在返回:Accept-Language: en-US,en;q=0.8

我最初粘贴到我的站点文件中的由 Google 生成的代码只有一个值来检查页面语言。但我编辑了它,见下文,并将一个数组传递给 pageLanguage 键,我认为它现在可以工作了。

<div id="google_translate_element"></div>
<script type="text/javascript">
    function googleTranslateElementInit() {
        new google.translate.TranslateElement({pageLanguage: ['en', 'en-us'], autoDisplay: false, multilanguagePage: true, gaTrack: true, gaId: 'UA-403844-8'}, 'google_translate_element');
    }
</script>
<script type="text/javascript" src="http://translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>

通过更改 Google Chrome 中的语言设置,我尽可能地进行了测试。但我并不完全相信它会起作用。任何没有在浏览器中配置 en 或 en-US 的人都应该看到翻译菜单。您可以将任何语言传递给阵列以根据您的需要正确配置它。

如果有人对此有任何反馈,我将不胜感激。希望能帮助到你。

于 2015-07-07T23:33:47.643 回答
0

要仅在您的页面与用户页面不同时显示翻译器,请进行服务器端检查并仅在必要时包含代码。

请参阅获取浏览器语言

您的网址不正确。添加“http:”。请参阅下面的工作示例。

<div id="google_translate_element"></div>

<script type="text/javascript">

function googleTranslateElementInit() {
  new google.translate.TranslateElement({pageLanguage: 'en',
    layout: google.translate.TranslateElement.FloatPosition.TOP_LEFT},
    'google_translate_element');
}

</script>

<script type="text/javascript" src="http://translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>
于 2013-06-28T14:10:12.160 回答
0

有趣的是,谷歌的自动翻译功能代码检索是如何被破坏的,不是吗?我在 Rincewind 级别向导中尝试了许多迭代,他们必须进行自定义设置,但默认设置为不适合我的网站设计的选项卡式功能。

这适用于英文网站,请更改不应该显示栏的网站默认语言的语言代码。如果您不使用它,请删除跟踪。

<!-- <div id="google_translate_element"></div> -->
<script type="text/javascript">
    function googleTranslateElementInit() {
        new google.translate.TranslateElement({
        pageLanguage: 'en', 
        autoDisplay: true,
        layout: google.translate.TranslateElement.InlineLayout.SIMPLE, 
        gaTrack: true, gaId: 'UA-xxxxxx-x'
        }, 'google_translate_element');
    }
</script>
<script type="text/javascript" src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>
于 2015-06-30T19:27:38.957 回答
0
<div id="google_translate_element"></div><script type="text/javascript">
function googleTranslateElementInit() {
  new google.translate.TranslateElement({pageLanguage: 'id', includedLanguages: 'id', 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>
于 2017-05-19T02:03:06.073 回答
-1
<div id="google_translate_element"></div><script type="text/javascript">
function googleTranslateElementInit() {
  new google.translate.TranslateElement({pageLanguage: 'en', autoDisplay: false}, 'google_translate_element');
}
</script><script type="text/javascript" src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>
于 2017-01-30T18:56:44.607 回答
-1
<div id="google_translate_element"></div><script type="text/javascript">


function googleTranslateElementInit() {
  new google.translate.TranslateElement({pageLanguage: 'en', layout: google.translate.TranslateElement.InlineLayout.SIMPLE, autoDisplay: false, multilanguagePage: true}, 'google_translate_element');
}
</script><script type="text/javascript" src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>
于 2016-08-05T05:00:47.433 回答
-1
<div id="google_translate_element"></div>
<script type="text/javascript">
    function googleTranslateElementInit() {
      new google.translate.TranslateElement({
          pageLanguage: 'es', 
          includedLanguages: 'es', 
          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>
于 2017-07-06T19:59:32.923 回答