Javascript.RU

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

Не срабатывает langFirstVisit. Что не так?
Поставил виджет для автоматического перевода сайта
Сам сайт на русском, нужно что бы при первом заходе сайт по умолчанию открывался на украинском
ставлю дефолтный lang: "uk",
не работает
нашел в инете якобы решение сделать langFirstVisit: 'uk',
не работает
кто подскажет что не так?
вот сайт

Спасибо
Ответить с цитированием
  #2 (permalink)  
Старый 25.07.2022, 14:13
Аспирант
Отправить личное сообщение для Дмитрий Луценко Посмотреть профиль Найти все сообщения от Дмитрий Луценко
 
Регистрация: 24.05.2022
Сообщений: 36

Вы бы указывали в js тегах нужный скрипт, где участвует этот флаг.
Так Вы увеличите шансы получить помощь.

Чисто для интереса глянул, что у Вас там:

<script>
    const googleTranslateConfig = {
    lang: "ru",
	langFirstVisit: 'uk',
	
};

function TranslateInit() {

    let code = TranslateGetCode();
    // Находим флаг с выбранным языком для перевода и добавляем к нему активный класс
    $('[data-google-lang="' + code + '"]').addClass('language__img_active');

    if (code == googleTranslateConfig.lang) {
        // Если язык по умолчанию, совпадает с языком на который переводим
        // То очищаем куки
        TranslateClearCookie();
    }

    // Инициализируем виджет с языком по умолчанию
    new google.translate.TranslateElement({
        pageLanguage: googleTranslateConfig.lang,
    });

    // Вешаем событие  клик на флаги
    $('[data-google-lang]').click(function () {
        TranslateSetCookie($(this).attr("data-google-lang"))
        // Перезагружаем страницу
        window.location.reload();
    });
}

function TranslateGetCode() {
    // Если куки нет, то передаем дефолтный язык
    let lang = ($.cookie('googtrans') != undefined && $.cookie('googtrans') != "null") ? $.cookie('googtrans') : googleTranslateConfig.lang;
    return lang.substr(-2);
}

function TranslateClearCookie() {
    $.cookie('googtrans', null);
    $.cookie("googtrans", null, {
        domain: "." + document.domain,
    });
}

function TranslateSetCookie(code) {
    // Записываем куки /язык_который_переводим/язык_на_который_переводим
    $.cookie('googtrans', "/auto/" + code);
    $.cookie("googtrans", "/auto/" + code, {
        domain: "." + document.domain,
    });
}
    </script>
Ответить с цитированием
  #3 (permalink)  
Старый 25.07.2022, 14:30
Аспирант
Отправить личное сообщение для Дмитрий Луценко Посмотреть профиль Найти все сообщения от Дмитрий Луценко
 
Регистрация: 24.05.2022
Сообщений: 36

У Вас флаг langFirstVisit не используется.

Попробуйте этот способ.

function TranslateGetCode() {
    // Если куки нет, то передаем дефолтный язык
    let lang = ($.cookie('googtrans') != undefined && $.cookie('googtrans') != "null") ? $.cookie('googtrans') : googleTranslateConfig.langFirstVisit;
    return lang.substr(-2);
}


Еще дополнительно совет: приведите в порядок загрузку скриптов и стилей. У Вас ошибки Mixed Content.
Для этого убирайте явное указание протокола http
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как улавливать событие редактирования сообщения через VK API? tarasoyi Общие вопросы Javascript 0 25.06.2020 11:28
Смешных моментов жизни след laimas Оффтопик 1 26.05.2020 01:31
Возведение в степень по модулю. Что не так? Добрый_Серый_Волк Ваши сайты и скрипты 7 18.10.2019 18:03
Не работает if(true){}, что не так? switch001 Javascript под браузер 5 09.08.2013 10:17
Посоветуйте новику, что я делаю не так danil-n2 Общие вопросы Javascript 5 26.04.2013 21:22