ошибка MutationObserver

хочу сделать что бы #yikes-mailchimp-container-1 p удалялся через 5 секунд спустя появление. Что нужно доделать в этом алгоритме?

Показывает ошибку Uncaught TypeError: Failed to execute 'observe' on 'MutationObserver': parameter 1 is not of type 'Node'.


// Выбираем целевой элемент
var target = document.querySelector('#yikes-mailchimp-container-1 p');
// Конфигурация observer (за какими изменениями наблюдать)
const config = {
    attributes: true,
    childList: true,
    subtree: true
};

// Колбэк-функция при срабатывании мутации
const callback = function(mutationsList, observer) {
    for (let mutation of mutationsList) {
        if (mutation.type === 'attributes') {
            setTimeout(function() {
                document.querySelector("#yikes-mailchimp-container-1 p").remove();
            }, 5000);
        }
    }
};

// Создаём экземпляр наблюдателя с указанной функцией колбэка
const observer = new MutationObserver(callback);

// Начинаем наблюдение за настроенными изменениями целевого элемента
observer.observe(target, config);

// Позже можно остановить наблюдение
observer.disconnect();


Ответы (1 шт):

Автор решения: Grundy

ошибка Uncaught TypeError: Failed to execute 'observe' on 'MutationObserver': parameter 1 is not of type 'Node'.

Явно говорит, что первым параметром передан не узел.

Это свидетельствует о том, что переменной target

// Выбираем целевой элемент
var target = document.querySelector('#yikes-mailchimp-container-1 p');

Присвоилось значение null. Это может быть из-за того, что элемента с указанным id нет на странице. Либо он появляется на ней, позже присваивания значения переменной.

→ Ссылка