Как узнать существует ли записанный в переменную элемент на странице?

Допустим есть div, внутри него глубоко спрятан span. Я нахожу span и присваиваю переменной. Затем
div.innerHTML='123'.
Как узнать что span-а записанного в переменную больше нет на странице, если он находится неизвестно на каком уровне? Можно циклом проверить parentNode, но возможно есть более правильный способ.
  • Вопрос задан
  • 173 просмотра
Решения вопроса 1
Petroveg
@Petroveg
Миром правят маленькие с#@&ки
Как только вы переписали содержание элемента, свойство parentNode любого ребёнка, ранее находившегося в этом блоке, будет равно null.
Пример

Если элемент вложен в удаляемую ветку дерева (потомок), то parentNode вернёт ссылку на родителя в удалённой ветке, и самый простой способ проверить его нахождение в DOM — использовать Node.contains() (вернёт false).
Пример

Если хочется отслеживать изменение элемента вообще, то решение есть тут Как отловить создание нового IFrame на странице?
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы