Całe zagadnienie o którym mówisz to internacjonalizacja (i18n) i istnieje do niej wiele rozwiązań w JS jak np (http://i18next.com) albo angular-translate w Angularze. Sprowadza się zwykle do umieszczenia wszelkich tekstów w oddzielnym obiekcie w wersjach dla różnych języków, np:
var translations = {
'en' : {
'CAT': 'Cat',
'DOG': 'Dog'
},
'pl': {
'CAT': 'Kot',
'DOG': 'Pies'
}
}
A następnie umieszczenie kluczy w kodzie html np:
<p nazwaAtrybutuZwiązanazTłumaczeniemAlboKlasa> DOG </p>
Warto na początek samemu spróbować zmienić zawartość wszystkich elementów oznaczonych jakąś naszą klasą na tekst odpowiedniego języka za pomoca podstawowego JSa.