Код:
<html>
<head>
<style>
.field { padding:2px 2px; border:1px solid #aaa; box-shadow:inset 2px -2px 5px #aaa; border-radius:5px; width:200px; height:40px; }
</style>
<script>
var lang = 'ru';
function i18n(str_lang) {
var el_c = [].slice.call(document.body.children);
el_c.forEach(item => {
var str_tr = item.getAttribute('data-' + str_lang);
if(str_tr) {
if(item.tagName != 'INPUT')
item.innerHTML = str_tr;
else {
item.value = str_tr;
item.onclick = function() { this.value = ''; }
}
}
});
}
window.onload = function() {
i18n(lang);
}
function _i18n() { i18n(lang); }
</script>
</head>
<body onclick="_i18n();">
<input class="field" data-en="value" data-de="Wert" data-ru="значение" value="">
<br>
<p data-en="Firstname:" data-de="Vorname:" data-ru="Имя:">Firstname</p>
<div data-en="Lastname:" data-de="Nachname:" data-ru="Фамилия:">Lastname</div>
<br>
<a href="javascript:lang='en';i18n('en');">En</a>
<a href="javascript:lang='de';i18n('de');">De</a>
<a href="javascript:lang='ru';i18n('ru');">Ru</a>
</body>