Работа со јазли во JavaScript
Како што знаете, таговите може да содржат други тагови или, зборувајќи во термини на JavaScript, DOM елементите може да содржат други DOM елементи. Покрај ова, сепак, во нив може да има коментари и обичен текст. Коментарите, текстовите и DOM елементите се обединуваат под едно име - јазли.
Веќе ви се познати својствата firstElementChild,
lastElementChild,
nextElementSibling,
previousElementSibling.
Овие својства работат токму со DOM елементи,
игнорирајќи ги останатите јазли. По правило, токму
тоа ни е потребно.
Сепак, постојат и својства firstChild,
lastChild, nextSibling, previousSibling.
Овие својства работат на сличен начин,
сепак, земајќи ги предвид сите јазли. Ајде да ја видиме
разликата помеѓу овие својства на пример.
Нека имаме див кој содржи три јазли:
<div id="elem"><!--com-->text<span>tag</span></div>
Да добиеме линк до овој див во променлива:
let elem = document.querySelector('#elem');
А сега ајде да видиме што содржат
својствата firstChild и firstElementChild:
console.log(elem.firstChild); // коментар
console.log(elem.firstElementChild); // тагот span
Напишете код кој ќе ја покаже разликата помеѓу
lastChild и lastElementChild.
Напишете код кој ќе ја покаже разликата помеѓу
nextSibling и nextElementSibling.
Напишете код кој ќе ја покаже разликата помеѓу
previousSibling и previousElementSibling.