Сведения о вопросе

DUNKER

09:11, 1st August, 2020

Теги

Google   Google   Translate    

Google translate для перевода сайта без верхнего фрейма

Просмотров: 386   Ответов: 2

Google translate мне классно подходит для перевода сайта, но смущает верхний фрейм с логотипом.
Пробовал отдельно грузить нижний фрейм, но там есть защитный код, который меняется.

Может есть альтернативные сервисы? API не хотелось бы применять — нет времени на это. Это как последний вариант



  Сведения об ответе

DINO

17:25, 14th August, 2020

  Сведения об ответе

Chhiki

03:25, 18th August, 2020

Сам недавно столкнулся с подобной проблемой.
Вот моё не слишком изящное решение на JQuery, вдруг кому-то пригодится.
function DeleteGoogleIframe()
{
    // Проверяем есть ли на странице фрейм гугла.
    // Если у вас на сайте есть другие фреймы, данную запись придется менять.
    if($("iframe").length)
    {
        // Ожидаем пока фрейм прогрузится
        $("iframe").load(function()
        {
            // Прячем панель гугла через 250мс (таймаут был подобран экспериментально)
            // Без использования таймаута убрать панель мне не удалось.
            setTimeout(function()
            {
                // прячем панель
                $("iframe").hide();
            }, 250);
        });
    }
}


Вызов функции DeleteGoogleIframe нужно добавить в код, размещаемый на странице сайта:
<div id="google_translate_element"></div>
<script>
function googleTranslateElementInit() {
  new google.translate.TranslateElement({
    pageLanguage: 'ru',
    includedLanguages: 'en,ru'
  }, 'google_translate_element');
DeleteGoogleIframe();
}
</script>
<script src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>


Помимо этого, необходимо отслеживать событие выбора языка:
$('.goog-te-combo').live('change', DeleteGoogleIframe);


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться