Как работат метод contains в js?
Ответы
Danil Serobabin
06 декабря 2022
Метод node.contains(otherNode)
проверяет является ли переданный в него узел потомком данного узла. Возвращает true или false. Стоит обратить внимание, что если передать в метод тот же элемент на котором метод был вызван то contains
вернёт true.
// создаём 3 элемента
const section = document.createElement('section');
const div = document.createElement('div');
const p = document.createElement('p');
// создаём иерархию в которой p является дочерним элементом div, а div дочерним элементом section
div.append(p);
section.append(div);
// элемент div является дочерним элементом (прямым потомком) section
console.log(section.contains(div))// true
// элемент p является потомком section
console.log(section.contains(p))// true
// если передать в метод section, то результат также будет true
console.log(section.contains(container))// true
// создадим элемент, который не встроен в иерархию выше и проверим его
const span = document.createElement('span');
console.log(section.contains(span))// false
0
0