如何检查文档是否包含元素

GTS*_*Joe 4 javascript dom contains

我正在尝试检查 DOM 是否包含 ID =“htmlFileLink”的元素。

let element = document.createElement('a');
element.id = 'htmlFileLink';
document.body.insertAdjacentHTML( 'beforeend', element );

if( document.body.contains( document.getElementById('htmlFileLink') ) ) {
	alert ('yes');
}
else {
	alert ('no');
}
Run Code Online (Sandbox Code Playgroud)

为什么它警告“否”而不是“是”?

Nar*_*hav 7

该方法将一个节点添加到指定节点Node.appendChild()列表的末尾。如果给定的是对 中现有节点的引用,则将其从当前位置移动到新位置。childrenparentchilddocumentappendChild()

演示版

let element = document.createElement('a');
element.id = 'htmlFileLink';
element.innerText = 'Test';
document.body.appendChild(element);

if (document.body.contains(document.getElementById('htmlFileLink'))) {
  alert('yes');
} else {
  alert('no');
}
Run Code Online (Sandbox Code Playgroud)