Node.contains()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Node
接口的 contains()
方法返回一个布尔值,表示一个节点是否是给定节点的后代,即该节点本身、其直接子节点(childNodes
)、子节点的直接子节点等。
备注:节点包含在自身内部。
语法
js
contains(otherNode)
参数
返回值
返回一个布尔值,如果 otherNode
包含在节点中会返回 true
,否则返回 false
。
如果 otherNode
参数为 null
,则 contains()
始终返回 false
。
示例
下面的函数用来检查一个元素是否是 body 元素的后代元素。由于 contains
会包含元素自身,而确定 body 是否包含自身不是设计 isInPage
的意图,这种情况明确返回 false
。
js
function isInPage(node) {
return node === document.body ? false : document.body.contains(node);
}
规范
Specification |
---|
DOM Standard # ref-for-dom-node-contains① |
浏览器兼容性
BCD tables only load in the browser