From 11da0db2bb62d22c4f5a483739b6cea131c0d2e8 Mon Sep 17 00:00:00 2001 From: Norbert Renner Date: Thu, 2 Jul 2020 23:16:17 +0200 Subject: [PATCH] Set html lang attribute to translated language Unfortunately doesn't seem to stop Chrome from still asking to translate page that already is in local language. --- js/index.js | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/js/index.js b/js/index.js index e70527e..e95444a 100644 --- a/js/index.js +++ b/js/index.js @@ -454,6 +454,22 @@ }); } + i18next.on('languageChanged', function(detectedLanguage) { + // detected + fallbacks, e.g. ["de-DE", "de", "en"] + for (i = 0; i < i18next.languages.length; i++) { + var language = i18next.languages[i]; + + // set first (fallback) language, for which a bundle was found + if (i18next.hasResourceBundle(language, 'translation')) { + var htmlElem = document.documentElement; + if (htmlElem.getAttribute('lang') !== language) { + htmlElem.setAttribute('lang', language); + } + break; + } + } + }); + i18next .use(window.i18nextXHRBackend) .use(window.i18nextBrowserLanguageDetector)