Почему не работает перевод?

Ссылка скопирована
1 марта 2026 1 ответ
const changeLangUrl = () => {     if(lang === 'kz'){         lang= 'ru'         langText.innerHTML= 'Қазақ тілінде'         location.href = window.location.pathname + '#' + lang         langImg.src = 'images/vector/kzLang.svg'         transliteTitle(lang)         textBlockBlue.classList.remove('text_block_blue_kz')         krystal.classList.remove ('text_block_krystal_kz')         krystal.classList.remove ('.second_double_image_bottom_kz')         textBlockPhone.classList.remove('text_block_phone_kz')     }else{         lang='kz'         langText.innerHTML= 'На русском'         location.href = window.location.pathname + '#' + lang         langImg.src = 'images/vector/russianLang.svg'         transliteTitle(lang)         textBlockBlue.classList.add('text_block_blue_kz')         krystal.classList.add ('text_block_krystal_kz')         krystalImg.classList.add ('second_double_image_bottom_kz')         textBlockPhone.classList.add('text_block_phone_kz')     } }   export const transliteTitle = (hash) =>{     const translationsTitle = langArr['large_block_title'][hash];     const count = Math.min(titels.length, translationsTitle.length);     for(let x = 0; x < count; ++x) {         titels[x].innerHTML = translationsTitle[x];     }     const tarnslationSubtitle = langArr ['large_block_subtitle'] [hash];     const countSubTitle = Math.min(titels.length, tarnslationSubtitle.length);     for(let x = 0; x < countSubTitle; ++x) {         subTitles[x].innerHTML = tarnslationSubtitle[x];     }     const translateButtons = langArr ['large_block_button'] [hash];     const buttonCount = Math.min (buttonsTl.length, translateButtons.length);     for (let x = 0; x < buttonCount; ++x){         buttonsTl[x].innerHTML = translateButtons[x]     }     applicationTitle.innerHTML = langArr ['application_title'] [hash]     inputPlaceholder.placeholder = langArr ['application_input'] [hash]     document.documentElement.setAttribute('lang', `${hash}`)     document.querySelector('title').innerHTML = langArr ['title'] [hash]     description.content = langArr ['description'] [hash]     keyWords.content = langArr ['keywords'] [hash] }

const changeLangUrl = () => { if(lang === 'kz'){ lang= 'ru' langText.innerHTML= 'Қазақ тілінде' location.href = window.location.pathname + '#' + lang langImg.src = 'images/vector/kzLang.svg' transliteTitle(lang) textBlockBlue.classList.remove('text_block_blue_kz') krystal.classList.remove ('text_block_krystal_kz') krystal.classList.remove ('.second_double_image_bottom_kz') textBlockPhone.classList.remove('text_block_phone_kz') }else{ lang='kz' langText.innerHTML= 'На русском' location.href = window.location.pathname + '#' + lang langImg.src = 'images/vector/russianLang.svg' transliteTitle(lang) textBlockBlue.classList.add('text_block_blue_kz') krystal.classList.add ('text_block_krystal_kz') krystalImg.classList.add ('second_double_image_bottom_kz') textBlockPhone.classList.add('text_block_phone_kz') } } export const transliteTitle = (hash) =>{ const translationsTitle = langArr['large_block_title'][hash]; const count = Math.min(titels.length, translationsTitle.length); for(let x = 0; x < count; ++x) { titels[x].innerHTML = translationsTitle[x]; } const tarnslationSubtitle = langArr ['large_block_subtitle'] [hash]; const countSubTitle = Math.min(titels.length, tarnslationSubtitle.length); for(let x = 0; x < countSubTitle; ++x) { subTitles[x].innerHTML = tarnslationSubtitle[x]; } const translateButtons = langArr ['large_block_button'] [hash]; const buttonCount = Math.min (buttonsTl.length, translateButtons.length); for (let x = 0; x < buttonCount; ++x){ buttonsTl[x].innerHTML = translateButtons[x] } applicationTitle.innerHTML = langArr ['application_title'] [hash] inputPlaceholder.placeholder = langArr ['application_input'] [hash] document.documentElement.setAttribute('lang', `${hash}`) document.querySelector('title').innerHTML = langArr ['title'] [hash] description.content = langArr ['description'] [hash] keyWords.content = langArr ['keywords'] [hash] }

<button class="language_block">             <img class="kz_lang" src="images/vector/kzLang.svg" alt="kz">             <p class="language_text">Қазақ тілінде</p>         </button>

<button class="language_block"> <img class="kz_lang" src="images/vector/kzLang.svg" alt="kz"> <p class="language_text">Қазақ тілінде</p> </button>

Не получается запустить функцию changeLangUrl по клику на мобильном устройстве. Если запускать ее без использования eventlistener- она работает. Пробовал ловить клик на блок- та же песня. Поэтому как я понял, проблема не в кнопке...

Дополнительно:

Если запускать ее без использования eventlistener- она работает.

И вы решили тот код, который вызывает проблему, не показывать. Л - логика ))) Покажите как вы обработчик вешаете.

  • Алексей Ярков, languageBlock.addEventListener('click', changeLangUrl)
    Прошу прощения, упустил момент)
  • Нужно решить такую задачу?

    Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.

    Заказать помощь
    Лучший ответ
    1
    Сергей Миронов Ответ

    Чтобы понять, почему не работает перевод, нужно проанализировать несколько возможных причин и выполнить ряд действий для их устранения.

    1. Проверьте код, отвечающий за перевод. Убедитесь, что используется правильный синтаксис для перевода текста на нужный язык. Например, в случае использования PHP, убедитесь, что вы используете функции типа `gettext()` или аналогичные для перевода текста.

     

    2. Проверьте, что у вас установлены все необходимые языковые файлы для перевода. В случае использования PHP и функций gettext(), убедитесь, что у вас есть файлы `.po` с переводами для нужных языков.

    3. Убедитесь, что настройки вашего сервера позволяют использовать переводы. Например, для PHP необходимо установить и настроить расширение `gettext`.

    4. Проверьте, что вы правильно устанавливаете язык приложения. Например, в случае использования PHP, установите нужный язык с помощью функции `setlocale()`.

    5. Проверьте, что переводы действительно существуют для нужных строк. Иногда проблема может быть в том, что перевод не был добавлен для конкретной строки, из-за чего она остается на оригинальном языке.

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

    Другие ответы (0)

    Пока нет других ответов. Будьте первым, кто поможет автору.

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

    комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *

    Вам также может быть интересно