рдмрд┐рд▓реНрдб: markitUp, рдлреИрдВрд╕реАрдмреЙрдХреНрд╕, рдПрд▓рдлрд╛рдЗрдВрдбрд░ - WYSIWYG рд╕рдВрдкрд╛рджрдХреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдорд╣рд╛рди рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди

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

рджрд░рдЕрд╕рд▓, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рд╡рд░реНрдб рд╕реЗ рдХреЙрдкреА-рдкреЗрд╕реНрдЯ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдбрдмреНрд▓реНрдпреВрдПрди рдорд╛рд░реНрдХрдЕрдк рдХреА рдореВрд▓ рдмрд╛рддреЗрдВ 3-4 рдШрдВрдЯреЗ рдореЗрдВ рд╕рдордЭрд╛рдирд╛ рдЖрд╕рд╛рди рд╣реИред рд╕рдм рдХреБрдЫ рдорд╛рд░реНрдХрдЯрдЕрдк рдореЗрдВ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдореЗрдВ рд╕рд░реНрд╡рд░ рдкрд░ рдлрд╛рдЗрд▓реЗрдВ рдЕрдкрд▓реЛрдб рдХрд░рдиреЗ рдФрд░ рдЙрдирд╕реЗ рд▓рд┐рдВрдХ рдбрд╛рд▓рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдХрд╛ рдЕрднрд╛рд╡ рд╣реИред

рдЖрдЬ рдореИрдВрдиреЗ рдЕрджреНрднреБрдд jquery рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХреЗ рд╕рд╣рдЬреАрд╡рди рдХреЗ рд▓рд┐рдП рд╕рдордп рд╕рдорд░реНрдкрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛: markitUp, рдлреИрдВрд╕реАрдмреЙрдХреНрд╕, elFinderред рдореИрдВрдиреЗ рдЕрдкрдиреЗ рдХрд╛рдо рдХрд╛ рдирддреАрдЬрд╛ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред

рдЖрдкрдХреЛ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА : рдлреИрдВрд╕реАрдмреЙрдХреНрд╕ , рдорд╛рд░реНрдХрдЯрдЕрдк , рдПрд▓рдлрд┐рдВрдбрд░ ред Jquery рдФрд░ jquery ui рднреА рдХрд╛рдо рдореЗрдВ рдЖ рд╕рдХрддреЗ рд╣реИрдВ, рд╣рд╛рд▓рд╛рдБрдХрд┐ рдореИрдВ рдЙрдиреНрд╣реЗрдВ CDN рд╕реЗ рд▓реЛрдб рдХрд░ рд░рд╣рд╛ рд╣реВрдБред
рдЙрджрд╛рд╣рд░рдг рд╕рдВрдкрд╛рджрдХ рдХреЗ рд╕рд╛рде рдкреГрд╖реНрда рдХрд╛ HTML рдХреЛрдбред
<!DOCTYPE html> <html lang="ru"> <head> <meta charset="utf-8"> </head> <body> <form> <textarea id="post-content"></textarea> <button></button> </form> <div id="markitup-elfinder"></div> <link rel="stylesheet" type="text/css" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/smoothness/jquery-ui.css"/> <link rel="stylesheet" type="text/css" href="js/markitup/skins/simple/style.css"/> <link rel="stylesheet" type="text/css" href="js/markitup/sets/markdown/style.css"/> <link rel="stylesheet" type="text/css" href="js/elfinder/css/elfinder.min.css"/> <link rel="stylesheet" type="text/css" href="js/fancybox/jquery.fancybox.css"/> <script src="http://www.google.com/jsapi"></script> <script>google.load("jquery", "1");</script> <script>google.load("jqueryui", "1");</script> <script src="js/markitup/jquery.markitup.js"></script> <script src="js/markitup/sets/markdown/set.js"></script> <script src="js/elfinder/js/elfinder.min.js"></script> <script src="js/elfinder/js/i18n/elfinder.ru.js"></script> <script src="js/fancybox/jquery.fancybox.pack.js"></script> <script src="js/script.js"></script> </body> </html> 


рдФрд░ script.js рдлрд╝рд╛рдЗрд▓ рдХреА рд╕рд╛рдордЧреНрд░реА:
 function markitupElfinder(){ $('#markitup-elfinder').elfinder({ lang: 'ru', url : '/admin/dash/fm/', //        getFileCallback:function(file){ $.markItUp({ replaceWith:'![]('+file.url+' "[![:]!]")'}); $.fancybox.close(); } }).elfinder('instance'); $.fancybox({ content: $('#markitup-elfinder') }); } $(document).ready(function(){ $("#post-content").markItUp(mySettings); }); 


js/markitup/sets/markdown/set.js {name:'Picture', key:'P', replaceWith:'![[![Alternative text]!]]([![Url:!:http://]!] "[![Title]!]")'} рдФрд░ рдЗрд╕реЗ {name:'Picture', key:'P', call: 'markitupElfinder'} рд╕рд╛рде рдмрджрд▓реЗрдВ {name:'Picture', key:'P', call: 'markitupElfinder'} ред
Set.js рдореЗрдВ рдвреВрдВрдврдирд╛ рдФрд░ рдмрджрд▓рдирд╛ рдорд╛рд░реНрдХрд┐рдЯрдЕрдк рд╡рд┐рдиреНрдпрд╛рд╕ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рд╕реБрд░реБрдЪрд┐рдкреВрд░реНрдг рджреГрд╖реНрдЯрд┐рдХреЛрдг рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдХрд░реЗрдЧрд╛ред


рдЦреИрд░, рдХреБрдЫ рддрд╕реНрд╡реАрд░реЗрдВ рдЬреЛ рдореЗрд░реЗ рд╕рд╛рдордиреЗ рдЖрдИрдВ:
рдЦреБрдж рд╕рдВрдкрд╛рджрдХ
рдЫрд╡рд┐

рдкреНрд░рдмрдВрдзрдХ рдлрд╝рд╛рдЗрд▓ рд╡рд┐рдВрдбреЛ:
рдЫрд╡рд┐

рдЪрд┐рдкрдХрд╛рдиреЗ рдкрд░, рдПрдХ рдкреЙрдкрдЕрдк img рдЯреИрдЧ рдХреЗ рд▓рд┐рдП рд╢реАрд░реНрд╖рдХ рд╕рдВрдкрддреНрддрд┐ рдХреЗ рд▓рд┐рдП рдХрд╣рддрд╛ рд╣реИ:
рдЫрд╡рд┐

рдХрд╛рдо рдХрд╛ рдкрд░рд┐рдгрд╛рдо:
рдЫрд╡рд┐

рд╕рдВрдЧреНрд░рд╣ рдореЗрдВ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рдЙрджрд╛рд╣рд░рдг
рд▓рд╛рдЗрд╡ рдЙрджрд╛рд╣рд░рдг (рдзрдиреНрдпрд╡рд╛рдж KarNed )

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


All Articles