【问题标题】:Google Translate javascript snippet not working谷歌翻译 javascript 片段不起作用
【发布时间】:2019-08-07 20:18:49
【问题描述】:

我尝试使用来自 w3school.com 的代码 sn-p。它适用于 w3school,但不适用于我的 PC。

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

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

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

我在控制台中得到以下信息。

translate.html:18 GET file://translate.google.com/translate_a/element.js?cb=googleTranslateElementInit net::ERR_FILE_NOT_FOUND

【问题讨论】:

    标签: javascript google-translate


    【解决方案1】:

    w3school 的 sn-p 确实有一个错误。 它说添加以下行以包含 Google 的 API:

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

    不幸的是,尾随的 // 使它指向一个本地文件。因此,除非您已下载该库并将其与您的 html 文件捆绑在一起,否则这将毫无意义。 而是通过添加 https:

    链接到在线图书馆
    <script type="text/javascript" src="https://translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script> 
    

    【讨论】:

    • Devetoka 没问题 - 很高兴我能帮上忙!
    【解决方案2】:

    当您在您的机器上运行它时,您将它作为本地文件运行。因此,从//translate.google 等加载的源文件正试图在谷歌上找到这个文件。

    如果您将其替换为:

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

    您会发现它不再尝试查找本地文件(即在您的计算机上),而是会在 Internet 上查找它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-11-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多