使用Google Translate Jquery翻译多个DIV

时间:2018-05-23 07:45:09

标签: jquery google-cloud-platform google-translate google-translation-api

我正在使用此Google Translate JQuery脚本翻译我的blogitems:

        $("#translateButton").click(function () {
        var url = "https://translation.googleapis.com/language/translate/v2?key=MY_API";
        url += "&source=" + $("#sourceLang").text();
        url += "&target=" + $("#targetLang").val();
        url += "&q=" + escape($("#txtSource").text());
        $.get(url, function (data, status) {
            $("#txtTarget").val(data.data.translations[0].translatedText);
        });
    });

但是现在我只能翻译主要文字而不是翻译页面标题。是否也可以在页面标题DIV中翻译文本?

1 个答案:

答案 0 :(得分:0)

调用Google Translate API时,您可以传递多个输入源。您可以在API documentation上找到有关查询参数的更多信息。考虑到这一点,您可以有两个输入源,一个是页面标题,另一个是主要文本。结果将按照传递的输入源的顺序以数组形式返回。这是代码段:

$("#translateButton").click(function () {
        var url = "https://translation.googleapis.com/language/translate/v2?key=MY_API";
        url += "&source=" + $("#sourceLang").text();
        url += "&target=" + $("#targetLang").val();
        url += "&q=" + escape($("#txtSource").text());
        //pageTitle being the id of the div containing your page title
        url += "&q=" + escape($("#pageTitle").text());
        $.get(url, function (data, status) {
            $("#txtTarget").val(data.data.translations[0].translatedText);
            //Translated page title, which will replace the old one. 
            $("#pageTitle").val(data.data.translations[1].translatedText);
        });
    });