рдирдорд╕реНрддреЗ!
рдПрдХ
рд╣рдм рдкрд░ рдкреНрд▓рдЧ-рдЗрди
JTTree рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреЗрд╡рд▓ 2009 рдореЗрдВ рд╣реА
рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ ред рддрдм рд╕реЗ, рд╕рдм рдХреБрдЫ рдХрд╛рдлреА рдмрджрд▓ рдЧрдпрд╛ рд╣реИред рдкреНрд▓рдЧрдЗрди рд╕рдХреНрд░рд┐рдп рд░реВрдк рд╕реЗ рд╡рд┐рдХрд╕рд┐рдд рд╣реЛ рд░рд╣рд╛ рд╣реИред
рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдкреЗрдЬ github рдкрд░ ред
рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рдмрд╛рд░реАрдХрд┐рдпреЛрдВ рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рдореИрдВ рд╡рд░реНрддрдорд╛рди рдореЗрдВ (рд╕рд╣рд╛рдпрддрд╛ рдкреНрд░рдгрд╛рд▓реА) рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдпрд╣ рдкреНрд▓рдЧрдЗрди рдХреЗрд╡рд▓ рдЕрдкрд░рд┐рд╣рд╛рд░реНрдп рд╣реИ, рдФрд░ рдореИрдВ рдЗрд╕рдХреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ 90% рдмрдбрд╝реЗ рдЖрдирдВрдж рдХреЗ рд╕рд╛рде рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВред рдФрд░ рдореИрдВрдиреЗ рдЕрднреА рднреА рд╡рд╣реА рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рджреЗрдЦрд╛ рд╣реИред
рдпрджрд┐ рдЖрдкрдХреЛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдмрд╕ рдПрдХ рдкреЗрдбрд╝ рдЦреАрдВрдЪрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЖрдк рдЕрдиреНрдп рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╛ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЗрд╕реЗ рд╕реНрд╡рдпрдВ рднреА рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд░реВрдк рд╕реЗ, рд▓реЗрдХрд┐рди рд╡реНрдпрд╛рдкрдХ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЗ рд▓рд┐рдП - JsTree рд╕рд┐рд░реНрдл рдПрдХ рдмрдврд╝рд┐рдпрд╛ рд╡рд┐рдХрд▓реНрдк рд╣реИред
рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреНрдпрд╛ рд╣реИ?
- HTML рдорд╛рд░реНрдХрдЕрдк, json рдФрд░ xml рдкреНрд░рд╛рд░реВрдк рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдПрдХ рдкреЗрдбрд╝ рдХрд╛ рдирд┐рд░реНрдорд╛рдг
- рдПрдХ рдкреЗрдбрд╝ рдкрд░ рдиреЛрдбреНрд╕ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдХреЛ рдареАрдХ рд╕реЗ рдЯреНрдпреВрдирд┐рдВрдЧ рдХреЗ рд╕рд╛рде рдЦреАрдВрдЪреЗрдВ рдФрд░ рдЫреЛрдбрд╝реЗрдВ
- рдбрд╛рдпрдирд╛рдорд┐рдХ рд░реВрдк рд╕реЗ рдиреЛрдбреНрд╕ рдЬреЛрдбрд╝реЗрдВ / рдирд┐рдХрд╛рд▓реЗрдВ / рдмрджрд▓реЗрдВ
- рдПрдХ рдкреГрд╖реНрда рдкрд░ рдХрдИ рдкреЗрдбрд╝ рдмрдирд╛рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдФрд░ рдЗрди рдкреЗрдбрд╝реЛрдВ рдХреЗ рдмреАрдЪ рдиреЛрдбреНрд╕ рдореЗрдВ рд╣реЗрд░рдлреЗрд░
- рдордирдорд╛рдиреЗ рдкреНрд░рдХрд╛рд░ рдХреЗ рдиреЛрдбреНрд╕ (рдлрд╝рд╛рдЗрд▓, рдлрд╝реЛрд▓реНрдбрд░, рдбреНрд░рд╛рдЗрд╡, рд╣рд╛рдБ рдЬреЛ рднреА рд╣реЛ) рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛, рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рд╡реНрдпрд╡рд╣рд╛рд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ
- рдереАрдо рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди (рд▓реЗрдЦ рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ рд╕реНрдХреНрд░реАрди рдкрд░ рдХрд┐ рдореИрдВрдиреЗ рдЗрд╕реЗ рдХреИрд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рд╣реИ)
- рдХреАрдмреЛрд░реНрдб рдирд┐рдпрдВрддреНрд░рдг
- рджреЗрд╢реА рдФрд░ рдХрд╕реНрдЯрдо рдЪреЗрдХрдмреЙрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛
- AJAX рдиреЛрдб рд▓реЛрдб рд╣реЛ рд░рд╣рд╛ рд╣реИ, рдПрдХ рдкреЗрдбрд╝ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ рдпрд╛рдж рдХрд░рддреЗ рд╣реБрдП
- рдкреНрд▓рдЧрдЗрди рд╕реБрдВрджрд░ рдФрд░ рдкрдардиреАрдп рд╣реИ, рдпрд╣ рдЖрдкрдХреЛ рдЕрддрд┐рд░рд┐рдХреНрдд рдкреНрд▓рдЧрдЗрдиреНрд╕ рд▓рд┐рдЦрдиреЗ рдФрд░ рдЗрд╕реЗ рдмрд┐рдирд╛ рдХрд┐рд╕реА рд╕рдорд╕реНрдпрд╛ рдХреЗ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред
- рдЗрд╡реЗрдВрдЯ рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо
- рдмрд╣реБрднрд╛рд╖реА
- рдкреНрд░рдХрдЯреАрдХрд░рдг рдПрдирд┐рдореЗрд╢рди рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░реЗрдВ
- рд╡реГрдХреНрд╖ рдХреА рдЦреЛрдЬ
- рдХрд╕реНрдЯрдо рд╕рдВрджрд░реНрдн рдореЗрдиреВ
- рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╕рдорд░реНрдерди: IE 6+, рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕ 2+, рд╕рдлрд╛рд░реА 3+, рдУрдкреЗрд░рд╛ 9+, рдХреНрд░реЛрдо
- рдорд┐рдиреА-рдлреАрдЪрд░ рдЬрд┐рд╕рдиреЗ рдореБрдЭреЗ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдкреНрд░рд╕рдиреНрди рдХрд┐рдпрд╛, рд╡рд╣ рдерд╛ рд╡реНрд╣реЛрд▓рд░реЛ рдкреНрд▓рдЧрдЗрди, рдЬрд┐рд╕рдиреЗ рдкреВрд░реА рдЪреМрдбрд╝рд╛рдИ рдореЗрдВ рдПрдХ рдиреЛрдб рдкрд░ рдкреНрд░рдХрд╛рд╢ рдбрд╛рд▓рд╛ред рдПрдХ рд▓рд╛ рдореИрдХ рд╢реИрд▓реА
рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ?
рдЙрддреНрдХреГрд╖реНрдЯ рдФрд░ рд╕реНрдкрд╖реНрдЯ
рдЙрджрд╛рд╣рд░рдг рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рдкрд╛рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред
рд╡рд┐рд╕реНрддреГрдд рджрд╕реНрддрд╛рд╡реЗрдЬ рднреА рдореМрдЬреВрдж рд╣реИ ред
рдЖрд░рдВрдн рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ jquery.js, jstree.js (180KB рдХреЛ рдЕрд╕рдореНрдкреАрдбрд┐рдд рд░реВрдк рдореЗрдВ) рдФрд░ рд╡рд┐рд╖рдпреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдлрд╝реЛрд▓реНрдбрд░ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ (рдпрд╣ рд╕реНрд╡рдпрдВ рдкреНрд▓рдЧрдЗрди рджреНрд╡рд╛рд░рд╛ рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИ, рдмрд╕ рдЗрд╕реЗ рдЕрдЧрд▓рд╛ рдбрд╛рд▓реЗрдВ)
рдореИрдВ JSON рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдПрдХ рдкреЗрдбрд╝ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рджреВрдВрдЧрд╛ред
HTML:
<div id="tree"></div>
JQuery:
$("#tree") .bind("before.jstree", function (e, data) {
рд╣рдореЗрдВ
рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреА рднрд╛рд╡рдирд╛ рдореЗрдВ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдкреЗрдбрд╝ рдорд┐рд▓рддрд╛ рд╣реИ
рд╢рд╛рдпрдж рдореИрдВ рдЕрдиреНрдп рдЙрджрд╛рд╣рд░рдгреЛрдВ рд╕реЗ рд╢реАрдЯ рдХрд╛ рд╡рд░реНрдгрди рдирд╣реАрдВ рдХрд░реВрдВрдЧрд╛ред рдЖрдк рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рдЙрдирдХреЗ рд╕рд╛рде рдЦреБрдж рдХреЛ рдкрд░рд┐рдЪрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрджрд┐ рд╡рд┐рд╖рдп рдкрд░ рдХреЛрдИ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреНрд░рд╢реНрди рд╣реИрдВ, рддреЛ рдореИрдВ рдЦреБрд╢реА рдХреЗ рд╕рд╛рде рдЙрддреНрддрд░ рджреВрдВрдЧрд╛ред