mirror of
https://github.com/misode/misode.github.io.git
synced 2026-04-23 07:10:41 +00:00
35 lines
826 B
JavaScript
35 lines
826 B
JavaScript
const lngs = [
|
|
['en', 'English'],
|
|
['fr', 'Français'],
|
|
['pt', 'Português'],
|
|
['ru', 'Русский'],
|
|
['zh-CN', '简体中文']
|
|
]
|
|
|
|
lngs.forEach(v => $('#lngList').append(`<a class="dropdown-item" onclick="changeLng('${v[0]}')">${v[1]}</a>`))
|
|
|
|
function initLng() {
|
|
return i18next
|
|
.use(i18nextBrowserLanguageDetector)
|
|
.use(i18nextXHRBackend)
|
|
.init({
|
|
backend: { loadPath: '../locales/{{lng}}.json' },
|
|
fallbackLng: 'en',
|
|
whitelist: lngs.map(v => v[0]),
|
|
keySeparator: false
|
|
})
|
|
.then(() => {
|
|
jqueryI18next.init(i18next, $, { parseDefaultValueFromContent: false });
|
|
});
|
|
}
|
|
|
|
function changeLng(code) {
|
|
i18next.changeLanguage(code).then(() => {
|
|
if ('listeners' in window) {
|
|
listeners.forEach(l => l());
|
|
} else {
|
|
$('html').localize();
|
|
}
|
|
})
|
|
}
|