HTML5 рдбреЗрдЯрд╛- * рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреГрд╖реНрдареЛрдВ рдХреЗ рдЕрдиреБрд╡рд╛рдж рдХреЗ рд▓рд┐рдП JQuery рдкреНрд▓рдЧрдЗрди

рдЖрдкрдХрд╛ рджрд┐рди рд╢реБрдн рд╣реЛ!

рдореИрдВ рд╕рд░рд▓рддрдо jQuery рдкреНрд▓рдЧрдЗрди рдФрд░ рдбреЗрдЯрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рдЕрдЪреНрдЫрд╛ рдирдпрд╛ html5 рдЧреЛрд▓реЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рд╛рдЗрдЯ рдкреГрд╖реНрдареЛрдВ рдХреЗ рдЕрдиреБрд╡рд╛рдж рдХреЗ рд▓рд┐рдП рдЕрдкрдиреА рд╕рд░реНрд╡реЛрддреНрддрдо рдкреНрд░рдерд╛рдУрдВ рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ- * рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдБред

рддреЛ, рд▓рдХреНрд╖реНрдп: рд╡рд┐рдХрд╕рд┐рдд рд╡реЗрдм рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдЖрд╕рд╛рдиреА рд╕реЗ рдФрд░ рдЬрд▓реНрджреА рд╕реЗ рдХрдИ рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╕рд╣рд╛рдпрддрд╛ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ред

рдЕрдм рдереЛрдбрд╝рд╛ рдХреЛрдбред рдорд╛рди рд▓реЗрдВ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЗрд╕ рддрд░рд╣ рд╕реЗ рд╕рд░рд▓ HTML рдорд╛рд░реНрдХрдЕрдк рд╣реИ:

<h1 data-translate-key="HEADING-ONE">Heading 1</h1> <p data-translate-key="SOME-TEXT">Some text in tag P</p> <p data-translate-key="ANOTHER-TEXT">another text</p> 


рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдКрдкрд░ рджреА рдЧрдИ рд╕реВрдЪреА рдореЗрдВ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХрдИ html рддрддреНрд╡ рд╣реИрдВ рдЬреЛ рдЕрдиреБрд╡рд╛рдж рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛-рдЯреНрд░рд╛рдВрд╕рд▓реЗрдЯ-рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рдШреЛрд╖рд┐рдд рдХрд┐рдП рдЧрдП рд╣реИрдВ, рдЬрд┐рд╕рдХреЗ рджреНрд╡рд╛рд░рд╛ рд╣рдо рдкрд╛рда рдХреЛ рд╢рдмреНрджрдХреЛрд╢ рд╕реЗ рд╣реА рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВрдЧреЗред рдЯреИрдЧ рдХреЗ рдЕрдВрджрд░ рднреА рдкрд╛рда "рдбрд┐рдлрд╝реЙрд▓реНрдЯ" рд╣реИред

рд╢рдмреНрджрдХреЛрд╢ рдХрд╛ рд╕рдВрдЧрдарди рдорд╛рдирдХ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╡рд╕реНрддреБрдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛:

 var dict = { en: { 'SITE-TITLE': 'Site title', 'HEADING-ONE': 'Heading 1', 'SOME-TEXT': 'Some text in tag P', 'ANOTHER-TEXT': 'another text1' }, ru: { 'SITE-TITLE': ' ', 'HEADING-ONE': ' ', 'SOME-TEXT': '     P', 'ANOTHER-TEXT': ' ' } }; 


рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рджреЛ рд╢рдмреНрджрдХреЛрд╢ рд╣реИрдВред рд░реВрд╕реА рдФрд░ рдЕрдВрдЧреНрд░реЗрдЬреА рдХреЗ рд▓рд┐рдПред

рдЕрдм рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рддред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдкреНрд▓рдЧрдЗрди рд╣реАред рдЗрд╕рдореЗрдВ рдХреЛрдб рдХреА рдХреБрдЫ рд▓рд╛рдЗрдиреЗрдВ рд╣реИрдВ:

 $.html5Translate = function(dict, lang){ $('[data-translate-key]').each(function(){ $(this).html( dict[ lang ][ $(this).data('translateKey') ] ); }); }; 


рдпрд╣рд╛рдВ, рдЬреИрд╕рд╛ рдХрд┐ рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ рд╕реЗ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд╣рдореЗрдВ рдкреГрд╖реНрда рдХреЗ рд╕рднреА HTML рддрддреНрд╡ рдорд┐рд▓рддреЗ рд╣реИрдВ рдЬрд┐рдирдореЗрдВ рдбреЗрдЯрд╛-рдЯреНрд░рд╛рдВрд╕рд▓реЗрд╢рди-рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛ рд╣реИ рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдХреЙрд▓рдмреИрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрди рддрддреНрд╡реЛрдВ рдХреЗ рдкреВрд░реЗ рд╕рд░рдгреА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реНрдХреНрд░реЙрд▓ рдХрд░рддреЗ рд╣реИрдВред рдкреНрд░рддреНрдпреЗрдХ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдореЗрдВ рдЖрдЧреЗ, рд╣рдо рдкреНрд░рддреНрдпреЗрдХ рддрддреНрд╡ рдХреЗ рд▓рд┐рдП рдкрд╛рда рд╕реЗрдЯ рдХрд░рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╢рдмреНрджрдХреЛрд╢ рдХрд╛ рдЪрдпрди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╕рд╛рде рд╣реА рдкреНрд░рддреНрдпреЗрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рддрддреНрд╡ рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛-рдЕрдиреБрд╡рд╛рдж-рдХреБрдВрдЬреА рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреЗ рдореВрд▓реНрдп рдХреЗ рдЕрдиреБрд╕рд╛рд░ред рдлрд╝рдВрдХреНрд╢рди рдХреЗрд╡рд▓ рджреЛ рдЪрд░ рд▓реЗрддрд╛ рд╣реИ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ: рддрд╛рдирд╛рд╢рд╛рд╣реА - рдЗрд╕рдореЗрдВ рдбрд┐рдХреНрд╢рдирд░реА рдСрдмреНрдЬреЗрдХреНрдЯ рдФрд░ рд▓реИрдВрдЧ рд╢рд╛рдорд┐рд▓ рд╣реИ - рдЗрд╕рдореЗрдВ рднрд╛рд╖рд╛ рдХреЗ рдирд╛рдо рд╢рд╛рдорд┐рд▓ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдЕрдм рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдкреНрд▓рдЧрдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдмрд╕ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд░реЗрдВ:

1. jQuery рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВред
2. рдкреНрд▓рдЧрдЗрди рд╣реА рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВред
3. рдЖрд╡рд╢реНрдпрдХ рддрддреНрд╡реЛрдВ рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛-рдЕрдиреБрд╡рд╛рдж-рдХреБрдВрдЬреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рд╕реЗрдЯ рдХрд░рдХреЗ HTML рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЛ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░реЗрдВред
4. рдПрдХ рд╢рдмреНрджрдХреЛрд╢ рдмрдирд╛рдПрдВ (рдпрд╣ рдЕрдиреБрд╢рдВрд╕рд╛ рдХреА рдЬрд╛рддреА рд╣реИ рдХрд┐ рдЖрдк рдЗрд╕реЗ рдПрдХ рдЕрд▓рдЧ рдЬреЗрдПрд╕ рдлрд╝рд╛рдЗрд▓ рд╕реЗ рднреА рдЬреЛрдбрд╝ рджреЗрдВ)ред
5. рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЗ рдбреЛрдо рддреИрдпрд╛рд░ рд╣реЛрдиреЗ рдкрд░ рдЕрдиреБрд╡рд╛рдж рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░реЗрдВ рдФрд░ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдкреИрд░рд╛рдореАрдЯрд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ:

 $(document).ready(function(){ $.html5Translate(dict, 'en'); }); 


рдпрд╣рд╛рдВ, рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рд╣рдо рдЕрдиреБрд╡рд╛рдж рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░рддреЗ рд╣реИрдВ, рдпрд╣ рджрд░реНрд╢рд╛рддрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдбрд┐рдХреНрд╢рдирд░реА рдбрд┐рдХреНрд╢рдирд░реА рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдФрд░ рд╕рднреА рддрддреНрд╡реЛрдВ рдХреЗ рдкрд╛рда рдХрд╛ рдЕрдВрдЧреНрд░реЗрдЬреА рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдЖрдкрдХрд╛ рдзреНрдпрд╛рди рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред

Source: https://habr.com/ru/post/In177083/


All Articles