-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtranslate.js
More file actions
36 lines (32 loc) · 981 Bytes
/
translate.js
File metadata and controls
36 lines (32 loc) · 981 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
function Translate(languages, defaultLanguage)
{
var elements=document.querySelectorAll("[data-translate]")
var translations = null
var defaultTranslations = null
languages.map((item) => {
item.lang.map((lang) => {
if(lang == navigator.language)
{
translations = item.trans
}
if(lang == defaultLanguage)
{
defaultTranslations = item.trans
}
})
})
if(translations == null)
{
translations = defaultTranslations
}
elements.forEach((e) => {
if(translations[e.dataset.translate]== undefined)
{
e.innerHTML = defaultTranslations[e.dataset.translate]
} else
{
e.innerHTML = translations[e.dataset.translate]
}
})
document.querySelector("html").setAttribute("lang", navigator.language.substr(0,2))
}