Javascript 如何在脚本加载后强制google translate翻译页面? 函数googleTranslateElementInit(){ 新的google.translate.TranslateElement( { 页面语言:“ru”, 布局:google.translate.TranslateElement.FloatPosition.TOP_左上角, 自动显示:真 }, “谷歌翻译元素” ); }

Javascript 如何在脚本加载后强制google translate翻译页面? 函数googleTranslateElementInit(){ 新的google.translate.TranslateElement( { 页面语言:“ru”, 布局:google.translate.TranslateElement.FloatPosition.TOP_左上角, 自动显示:真 }, “谷歌翻译元素” ); },javascript,html,google-translate,Javascript,Html,Google Translate,脚本会加载,但加载后不会翻译页面。我需要从选择框中选择语言。如何在不从“选择”框中选择语言的情况下使其自动翻译?根据上面没有的代码片段,似乎有几处错误。我可能会这样重组 <script type="text/javascript"> function googleTranslateElementInit() { new google.translate.TranslateElement( { pageLanguage: 'ru', layout:

脚本会加载,但加载后不会翻译页面。我需要从选择框中选择语言。如何在不从“选择”框中选择语言的情况下使其自动翻译?

根据上面没有的代码片段,似乎有几处错误。我可能会这样重组

<script type="text/javascript"> 

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

</script>
<script type="text/javascript" src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>

函数googleTranslateElementInit(){
新的google.translate.TranslateElement(
{
页面语言:“ru”,
布局:google.translate.TranslateElement.FloatPosition.TOP_左上角,
自动显示:真
},
“谷歌翻译元素”
); 
}
googleTranslateElementInit();

您需要确保在代码尝试执行之前加载google translate脚本文件。然后你需要执行你的功能…

这是谷歌翻译加载元素时需要添加cookies的基本思想,然后你甚至可以使用CSS隐藏谷歌翻译元素

下面是一个简短的示例,使用:


函数googleTranslateElementInit(){
新的google.translate.TranslateElement({
页面语言:'en',
布局:google.translate.TranslateElement.FloatPosition.TOP_RIGHT,
自动显示:错误
}“谷歌翻译元素”);
}
(功能(){
var googleTranslateScript=document.createElement('script');
googleTranslateScript.type='text/javascript';
googleTranslateScript.async=true;
googleTranslateScript.src=
“//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit”;
(document.getElementsByTagName('head')[0]| | document.getElementsByTagName('body')[0])。appendChild(
谷歌翻译脚本);
})();
set('GoogleAccountsLocale_session','iw',{expires:999});
set('googtrans','/en/iw',{expires:999});
隐藏google translate元素的CSS:

    <div class="custom-translate" st yle="display: none;" id="google_translate_element"></div>


<!-- ASYNCHRONOUS Google Translate -->
<script type="text/javascript">
    function googleTranslateElementInit() {
        new google.translate.TranslateElement({
            pageLanguage: 'en',
            layout: google.translate.TranslateElement.FloatPosition.TOP_RIGHT,
            autoDisplay: false
        }, 'google_translate_element');
    }

    (function () {
        var googleTranslateScript = document.createElement('script');
        googleTranslateScript.type = 'text/javascript';
        googleTranslateScript.async = true;
        googleTranslateScript.src =
            '//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit';
        (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(
            googleTranslateScript);
    })();

    Cookies.set('GoogleAccountsLocale_session', 'iw', { expires: 999});
    Cookies.set('googtrans', '/en/iw', { expires: 999});
</script>

.goog te横幅框架,.自定义翻译{
显示:无;
}
身体{
顶部:0!重要;
}
.goog工具提示{
显示:无!重要;
}
.goog工具提示:悬停{
显示:无!重要;
}
.goog文本突出显示{
背景色:透明!重要;
边界:没有!重要;
盒影:无!重要;
}

或者我在哪里可以看到javascript api的参数列表?找不到它…翻译可能是英文的,但我想从英文翻译成其他语言,问题是google translator只翻译成英文,但如何改变这种行为答案是:不,它不起作用,正如我所见,谷歌将所有语言翻译成英语,但如何让它从英语翻译成其他语言呢?请查看这篇相关文章。
    <div class="custom-translate" st yle="display: none;" id="google_translate_element"></div>


<!-- ASYNCHRONOUS Google Translate -->
<script type="text/javascript">
    function googleTranslateElementInit() {
        new google.translate.TranslateElement({
            pageLanguage: 'en',
            layout: google.translate.TranslateElement.FloatPosition.TOP_RIGHT,
            autoDisplay: false
        }, 'google_translate_element');
    }

    (function () {
        var googleTranslateScript = document.createElement('script');
        googleTranslateScript.type = 'text/javascript';
        googleTranslateScript.async = true;
        googleTranslateScript.src =
            '//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit';
        (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(
            googleTranslateScript);
    })();

    Cookies.set('GoogleAccountsLocale_session', 'iw', { expires: 999});
    Cookies.set('googtrans', '/en/iw', { expires: 999});
</script>
<style>
.goog-te-banner-frame,.custom-translate {
        display: none;
}

body {
        top: 0 !important;
    }
.goog-tooltip {
    display: none !important;
}
.goog-tooltip:hover {
    display: none !important;
}
.goog-text-highlight {
    background-color: transparent !important;
    border: none !important; 
    box-shadow: none !important;
}

</style>