рдбреЛрдо рдиреЗрд╡рд┐рдЧреЗрд╢рди рд╣реЗрд▓реНрдкрд░реНрд╕
рдбреЛрдо рдЯреНрд░реА рдЙрджрд╛рд╣рд░рдг (w3schools рд╡реЗрдмрд╕рд╛рдЗрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЫрд╡рд┐)
рдиреЛрдб рдЯреНрд░реА рдореЗрдВ рдиреЛрдбреНрд╕ рдХрд╛ рдПрдХ рджреВрд╕рд░реЗ рд╕реЗ рдкрджрд╛рдиреБрдХреНрд░рдорд┐рдд рд╕рдВрдмрдВрдз рд╣реЛрддрд╛ рд╣реИред рд░рд┐рд╢реНрддреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд╛рддрд╛-рдкрд┐рддрд╛, рдмрдЪреНрдЪреЗ рдФрд░ рднрд╛рдИ-рдмрд╣рди рд╢рдмреНрдж рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рд╣рдорд╛рд░реЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд╣рдорд╛рд░реА рд╕рд╛рдордЧреНрд░реА рдкреНрд░рдмрдВрдзрди рдкреНрд░рдгрд╛рд▓реА рдХреЗ рд▓рд┐рдП рдЖрд╕рд╛рди рдиреЗрд╡рд┐рдЧреЗрд╢рди рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрдХрд░ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ред рд╣рдордиреЗ рдЬрд┐рди рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд┐рдпрд╛, рд╡реЗ рдереЗ рдХрд┐ рд╡рд┐рднрд┐рдиреНрди рдмреНрд░рд╛рдЙрдЬрд╝рд░ рддрддреНрд╡реЛрдВ рдХреЗ рдмреАрдЪ рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рдХреЛ рдХреИрд╕реЗ рд╕рдВрднрд╛рд▓рддреЗ рд╣реИрдВ, рдФрд░ рдХреБрдЫ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕ HTML рдХреЛ рдлрд┐рд░ рд╕реЗ рдкреНрд░рд╛рд░реВрдкрд┐рдд рдХрд░рддрд╛ рд╣реИред рд╕рдордп рдХреЗ рд╕рд╛рде рдФрд░ рдЙрдкрдпреЛрдЧреА рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд╕рд╛рде рд╣рдо рдЗрд╕рдореЗрдВ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред
DOM рдЯреНрд░реА рдХреЗ рдЖрд╕рдкрд╛рд╕ W3C рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рд╣реИред
JavaScript
function nextElSibling(el) {if (el.nextSibling)do { el = el.nextSibling } while (el && el.nodeType !== 1);return el;}function prevElSibling(el) {if (el.previousSibling)do { el = el.previousSibling } while (el && el.nodeType !== 1);return el;}function upElSibling(el) {do { el = el.parentNode; } while (el && el.nodeType !== 9 && el.nodeType !== 1);return el;}function upElSiblingA(el) {try {if (el.tagName.toLowerCase() === "a") { return el; }do { el = el.parentNode; } while (el && el.nodeType !== 9 && el.tagName.toLowerCase() !== "a");return el;}catch (err) {return el;}}function upElSiblingClass(el, elclass) {try {if (el.classList.contains(elclass) === true) {return el;}do { el = el.parentNode; } while (el && el.nodeType !== 9 && el.classList.contains(elclass) === false);return el;}catch (err) {return null;}}function countElSibling(el) {var i = 1;while ((el = el.previousElementSibling) != null)++i;return i;}function countElSiblingClass(el, cl) {var i = 0;while ((el = el.previousElementSibling) != null) { if (el.className == cl) ++i };return i;}
рдХреНрдпрд╛ рдХрд░рддреЗ рд╣реИ рд╡реЛ
рд╣рдордиреЗ рдЪрд╛рд░ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдЬреЛрдбрд╝рдХрд░ рд╢реБрд░реВ рдХрд┐рдпрд╛ рд╣реИред
- nextElSibling рдФрд░ prevElSibling рдХрд╛ рдЙрдкрдпреЛрдЧ рд╡рд┐рд╢реБрджреНрдз рд░реВрдк рд╕реЗ рдЕрдЧрд▓реЗ рдФрд░ рдкрд┐рдЫрд▓реЗ рддрддреНрд╡реЛрдВ рдкрд░ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдХрд┐рд╕реА рднреА рд╕рдлреЗрдж-рд╕реНрдерд╛рди рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдЬреЛ рдмреАрдЪ рдореЗрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
- upElSibling рдкреЗрдЯреЗрдВрдЯ рдЖрдЗрдЯрдо рдлрд┐рд░ рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ рд╡реНрд╣рд╛рдЗрдЯ-рд╕реНрдкреЗрд╕ рдЫреЛрдбрд╝ рджреЗрдВ
- upElSiblingA рдкреИрд░реЗрдВрдЯ рд╣рд╛рдЗрдкрд░рд▓рд┐рдВрдХ рддрддреНрд╡ рдХреЗ рд▓рд┐рдП рдиреЛрдбреНрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЦреЛрдЬ рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рд╣рдорд╛рд░реЗ рдЯреЗрдХреНрд╕реНрдЯ рдПрдбрд┐рдЯрд░ рдХреЗ рд▓рд┐рдП рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
- countElSibling рдФрд░ countElSiblingClass рдЕрдкрдиреЗ рдорд╛рддрд╛-рдкрд┐рддрд╛ рдХреЗ рднреАрддрд░ рддрддреНрд╡ рдХреА рд╕реНрдерд┐рддрд┐ рд▓реМрдЯрд╛рддреЗ рд╣реИрдВ, рдПрдХ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╡рд░реНрдЧ рдирд╛рдо рдХреА рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдлрд┐рд▓реНрдЯрд░ рдХреЗ рд╕рд╛рдеред