Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 05.01.2024, 08:25
Профессор
Отправить личное сообщение для Stas1985 Посмотреть профиль Найти все сообщения от Stas1985
 
Регистрация: 05.03.2012
Сообщений: 159

Перевод страниц на лету
Доброго времени суток форумчане! Пытаюсь сделать автоматический перевод страниц сайта на другие языки. Более подробнее _https://update.lik-astana.kz/ скрипт взял на github - https://github.com/get-web/google-tr...-custom-widget Скрипт установил на сайт но получаю ошибку
Код:
Uncaught TypeError: config is undefined
    TranslateInit /modules/mod_translate/assets/js/google-translate.js:43
    e https://translate.googleapis.com/_/translate_http/_/js/k=translate_http.tr.ru.fo2h-yJO3a4.O/d=1/exm=el_conf/ed=1/rs=AN8SPfpZvqCjXuC2yV2mpnE09FNx6XB4Hw/m=el_main:442
    <anonymous> https://translate.googleapis.com/_/translate_http/_/js/k=translate_http.tr.ru.fo2h-yJO3a4.O/d=1/exm=el_conf/ed=1/rs=AN8SPfpZvqCjXuC2yV2mpnE09FNx6XB4Hw/m=el_main:442
    <anonymous> https://translate.googleapis.com/_/translate_http/_/js/k=translate_http.tr.ru.fo2h-yJO3a4.O/d=1/exm=el_conf/ed=1/rs=AN8SPfpZvqCjXuC2yV2mpnE09FNx6XB4Hw/m=el_main:442
    <anonymous> https://translate.googleapis.com/_/translate_http/_/js/k=translate_http.tr.ru.fo2h-yJO3a4.O/d=1/exm=el_conf/ed=1/rs=AN8SPfpZvqCjXuC2yV2mpnE09FNx6XB4Hw/m=el_main:445
Вот часть скрипта где ошибка google-translate.js:43
if (config.langFirstVisit && !$.cookie("googtrans")) {
		/* Если установлен язык перевода для первого посещения и куки не назначены */
		/* If the translation language is installed for the first visit and cookies are not assigned */
		TranslateCookieHandler("/auto/" + config.langFirstVisit);
	}

Понимая что ошибка с куками но самостоятельно решить не получается .
Ответить с цитированием
  #2 (permalink)  
Старый 05.01.2024, 08:40
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,746

А где определяется и устанавливается config?
В ошибке именно про него написано: config is undefined
Ответить с цитированием
  #3 (permalink)  
Старый 05.01.2024, 08:49
Профессор
Отправить личное сообщение для Stas1985 Посмотреть профиль Найти все сообщения от Stas1985
 
Регистрация: 05.03.2012
Сообщений: 159

Сообщение от voraa Посмотреть сообщение
А где определяется и устанавливается config?
В ошибке именно про него написано: config is undefined
Определение config-га в этом файле нет, на гитхабе тоже не описано. В файлах что подтягиваются тоже нет. Вот сам блок с флагами
<!-- <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> -->
<script src="//translate.google.com/translate_a/element.js?cb=TranslateInit"></script>
<script src="https://cdn.jsdelivr.net/npm/js-cookie@2/src/js.cookie.min.js"></script>

<div class="language">		
<img src="/modules/mod_translate/images/kz.png" alt="kk" data-google-lang="kk" class="language__img" />
<img src="/modules/mod_translate/images/ru.png" alt="ru" data-google-lang="ru" class="language__img" />
<img src="/modules/mod_translate/images/us.png" alt="en" data-google-lang="en" class="language__img" />
</div>
Ответить с цитированием
  #4 (permalink)  
Старый 05.01.2024, 09:10
Профессор
Отправить личное сообщение для Stas1985 Посмотреть профиль Найти все сообщения от Stas1985
 
Регистрация: 05.03.2012
Сообщений: 159

Либо может посоветуете рабочий скрипт перевода, необходимо переводить страницы на лету.
Ответить с цитированием
  #5 (permalink)  
Старый 05.01.2024, 09:18
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,746

Вы что то сильно переделали, по сравнению с тем, что написано на гитхабе.
Там нет вызова скрипта
<script src="//translate.google.com/translate_a/element.js?cb=TranslateInit"></script>

Там этот скрипт вызывается автоматически и только после того, как загрузится DOM.
document.addEventListener("DOMContentLoaded", (event) => {
	/* Подключаем виджет google translate */
	/* Connecting the google translate widget */
	let script = document.createElement("script");
	script.src = `//translate.google.com/translate_a/element.js?cb=TranslateWidgetIsLoaded`;
	document.getElementsByTagName("head")[0].appendChild(script);
});

И он должен вызвать функцию TranslateInit, после того, как загрузится с параметром config.

Последний раз редактировалось voraa, 05.01.2024 в 09:21.
Ответить с цитированием
  #6 (permalink)  
Старый 05.01.2024, 09:35
Профессор
Отправить личное сообщение для Stas1985 Посмотреть профиль Найти все сообщения от Stas1985
 
Регистрация: 05.03.2012
Сообщений: 159

Да действительно ошибка пропала, спасибо! Но перевод так и не происходит
Ответить с цитированием
  #7 (permalink)  
Старый 05.01.2024, 09:44
Профессор
Отправить личное сообщение для Stas1985 Посмотреть профиль Найти все сообщения от Stas1985
 
Регистрация: 05.03.2012
Сообщений: 159

если подключаю как на гит
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
страница перестает грузится вовсе
Ответить с цитированием
  #8 (permalink)  
Старый 05.01.2024, 11:52
Профессор
Отправить личное сообщение для Stas1985 Посмотреть профиль Найти все сообщения от Stas1985
 
Регистрация: 05.03.2012
Сообщений: 159

попробовал вариант с nativejs - https://github.com/get-web/google-tr...aster/nativejs Просто перезагружает страницу но перевода нет. Подскажите пожалуйста, что не так
Ответить с цитированием
  #9 (permalink)  
Старый 05.01.2024, 12:35
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,746

У вас большой сайт, где уже подключено 100500 всяких скриптов. И разбираться как они там между собой взаимодействуют никто не будет.
Обычно для чего то нового делается небольшой тестовый пример, буквально одна страничка с текстом и добиваются, что бы она работала (или не работала). Только так можно понять, что и как надо подключать
Ответить с цитированием
  #10 (permalink)  
Старый 05.01.2024, 12:42
Профессор
Отправить личное сообщение для Stas1985 Посмотреть профиль Найти все сообщения от Stas1985
 
Регистрация: 05.03.2012
Сообщений: 159

Сообщение от voraa Посмотреть сообщение
У вас большой сайт, где уже подключено 100500 всяких скриптов. И разбираться как они там между собой взаимодействуют никто не будет.
Обычно для чего то нового делается небольшой тестовый пример, буквально одна страничка с текстом и добиваются, что бы она работала (или не работала). Только так можно понять, что и как надо подключать
Может посоветуете что-то что будет работать.
После подключения nativejs появились такие ошибки
Код:
Ресурс с «https://translate-pa.googleapis.com/v1/supportedLanguages?%5Bobject%20Map%20Iterator%5D=%5Bobject%20Map%20Iterator%5D» был заблокирован из-за несоответствия MIME-типа («application/json») (X-Content-Type-Options: nosniff)
Код:
Uncaught TypeError: a.callbackName is undefined
    <anonymous> about:srcdoc:11
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Спарсить несколько страниц (Google Chrome Extension) libertyswift Javascript под браузер 6 20.01.2017 10:43
Phonegap Сверстать 5-7 страниц yan3000 Мобильный JavaScript 1 17.08.2016 22:05
предварительная загрузка страниц в Chrome Kealman Opera, Safari и др. 0 24.07.2013 16:33
Поиск страниц по ключевым словам stormageddon Events/DOM/Window 5 22.06.2013 21:09
Динамическое меню кол-ва страниц. wayzer Элементы интерфейса 0 26.12.2012 20:29