Spec-Zone.ru › Web APIs

MutationRecord: свойство nextSibling

Базовая поддержка Широко доступно

Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с июля 2015 года.

  • Подробнее
  • Полная совместимость
  • Отправить отзыв

Свойство MutationRecord только для чтения nextSibling — это следующий брат добавленного или удалённого дочернего узла из target в MutationObserver.

Значение

Если узел добавлен или удалён из target в MutationObserver, значение — это Node, являющийся следующим братом добавленного или удалённого узла: то есть, узел, непосредственно следующий за ним в списке childNodes родителя.

Значение равно null в случае отсутствия добавленных или удалённых узлов, или если узел является последним дочерним узлом своего родителя.

Примеры

Вывод следующего брата мутации

Этот код добавляет узел каждый раз при нажатии на кнопку, но добавляет его в начало целевого элемента, а не в конец. Затем наблюдатель выводит textContent nextSibling добавленного узла.

HTML

<button id="add-nodes">Add a node</button>
<button id="reset">Reset</button>

<pre id="log" class="log">Next sibling of added node:</pre>
<div id="target"><p>Node #0</p></div>

JavaScript

const addNodes = document.querySelector("#add-nodes");
const reset = document.querySelector("#reset");
const target = document.querySelector("#target");
let nodeNumber = 1;

addNodes.addEventListener("click", () => {
  const newPara = document.createElement("p");
  newPara.textContent = `Node #${nodeNumber}`;
  nodeNumber++;
  target.insertBefore(newPara, target.firstChild);
});

reset.addEventListener("click", () => self.location.reload());

function logNextSibling(records) {
  for (const record of records) {
    if (record.type === "childList") {
      for (const newNode of record.addedNodes) {
        log.textContent = `Next sibling of added node: ${record.nextSibling?.textContent}`;
      }
    }
  }
}

const observer = new MutationObserver(logNextSibling);
observer.observe(target, { childList: true });

Результат

Спецификации

Спецификация
DOM
# ref-for-dom-mutationrecord-nextsibling②

Совместимость с браузерами

Рабочий стол Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox for Android Opera Android Safari on IOS Samsung Internet WebView Android
nextSibling 16 12 14 15 7 18 14 14 7 1.0 4.4

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/MutationRecord/nextSibling

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API