Я пытаюсь вставить новый элемент на мою страницу, используя метод insertBefore , но возникает следующая ошибка: «NotFoundError: Узел не найден».
Я не знаюНе понимаю, почему это не работает.
Вот мой код:
let parent = document.getElementById('parent-id')
let title = notification.getElementsByTagName('h3')[1]
let subtitle = createNodeBefore(parent, title, 'h4', 'Subtitle text')
А вот моя createNodeBefore()
функция:
let createNodeBefore = (parent, node, type, text, id = false, className = false, style = false) => {
let textNode = document.createTextNode(text)
let element = document.createElement(type)
element.className = className ? className : ""
element.id = id ? id : ""
element.style = style ? style : ""
element.appendChild(textNode)
parent.insertBefore(element, node)
return element
}
Когда я делаю консольвойти прямо перед строкой parent.insertBefore(element, node)
, я вижу parent
, element
и node
.
Редактировать: Добавить HTML
HTML выглядит так:
<article id="parent-id">
<div>
<h3>Some text</h3>
<i>5th December 2018</i>
<h3>My title</h3>
<p>Content ...p>
...
</div>
</article>