似乎有些人在这里着陆,只是想知道某个元素是否 存在 (与原始问题略有不同)。
就像使用浏览器的任何选择方法,然后检查它的 真实 值一样简单(通常)。
例如,如果我的元素有一个
id的
"find-me",我可以简单地使用…
var elementExists = document.getElementById("find-me");可以指定返回元素或的引用
null。如果必须具有布尔值,则只需
!!在方法调用之前扔一个。
此外,您可以使用许多其他方法来查找元素,例如(全部靠
document):
querySelector()
/querySelectorAll()
getElementsByClassName()
getElementsByName()
其中一些方法返回a
NodeList,因此请务必检查其
length属性,因为a
NodeList是一个对象,因此为 true 。
为了实际确定某个元素是否作为可见DOM的一部分存在(就像最初提出的问题一样),Csuwldcat提供了一个比滚动自己的元素更好的解决方案(此答案曾经包含)。也就是说,在DOM元素上使用该
contains()方法。
您可以像这样使用它…
document.body.contains(someReferenceToADomElement);



