АКЦЫЯ: бясплатныя месячныя курсы па стварэнні сайтаў
на выбар: вёрстка, JavaScript, PHP, Python або фрэймворкі. Сёння апошні дзень для запісу! Націскай!
174 of 264 menu

Метад insertBefore

Метад insertBefore дазваляе ўставіць элемент перад іншым элементам. Найчасцей выкарыстоўваецца пасля стварэння элемента з дапамогай createElement. Метад ужываецца да бацькі таго элемента, перад якім адбудзецца ўстаўка.

Сінтаксіс

бацька.insertBefore(элемент, перад кім уставіць);

Прыклад

Створам абзац і змясцім яго перад другім абзацам:

<div id="parent"> <p>elem 1</p> <p id="before">elem 2</p> <p>elem 3</p> </div> let parent = document.querySelector('#parent'); let before = document.querySelector('#before'); let p = document.createElement('p'); p.textContent = '!'; parent.insertBefore(p, before);

Вынік выканання кода:

<div id="parent"> <p>elem 1</p> <p>!</p> <p>elem 2</p> <p>elem 3</p> </div>

Прыклад

Дадамо абзац у пачатак элемента #parent. Для гэтага ўставім наш абзац перад першым нашчадкам #parent. Гэтага нашчадка можна знайсці з дапамогай firstElementChild:

<div id="parent"> <p>elem 1</p> <p>elem 2</p> </div> let parent = document.querySelector('#parent'); let p = document.createElement('p'); p.textContent = '!'; parent.insertBefore(p, parent.firstElementChild);

Вынік выканання кода:

<div id="parent"> <p>!</p> <p>elem 1</p> <p>elem 2</p> </div>

Прыклад

Пры перадачы другім параметрам null метад insertBefore дзейнічае як appendChild. У той жа час, калі ў элеменце няма даччыных элементаў, firstElementChild вяртае null. Такім чынам, дадаваць у пачатак элемента можна нават тады, калі ў ім няма даччыных элементаў:

<div id="parent"></div> let parent = document.querySelector('#parent'); let p = document.createElement('p'); p.textContent = '!'; parent.insertBefore(p, parent.firstChild);

Вынік выканання кода:

<div id="parent"> <p>!</p> </div>

Глядзіце таксама

  • метад prepend,
    які ўстаўляе элементы ў пачатак
  • метад appendChild,
    які ўстаўляе элементы ў канец бацькі
  • метад insertAdjacentElement,
    які ўстаўляе элемент у зададзенае месца
  • метад insertAdjacentHTML,
    які ўстаўляе тэгі ў зададзенае месца
byenru