Код:
<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>