このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

Node: contains() メソッド

Baseline
広く利用可能

この機能は広く実装されており、多くのバージョンの端末やブラウザーで動作します。2015年7月以降、すべてのブラウザーで利用可能です。

contains() は Node インターフェイスのメソッドで、あるノードが指定されたノードの子孫であるか、すなわち、このノード自体であるか、直接の子ノード (childNodes) の何れかであるか、直接の子ノードの子ノードの何れかであるか(以下同様)を示す論理値を返します。

メモ: ノードは自分自身に含まれます。

構文

js
contains(otherNode)

引数

otherNode

検査する Node です。

メモ: otherNode は省略できませんが、 null に設定することはできます。

返値

論理値で、 true は otherNode がそのノードに含まれていることを表します。 そうでなければ false になります。

otherNode 引数が null であれば、 contains() は常に false になります。

例

この関数は、ある要素がそのページの body 要素に含まれるかどうかを検査するものです。 contains は包括的かつ決定的であるため、 body がそれ自身を含むかどうかは isInPage の意図するところではないため、明示的に false を返します。

js
function isInPage(node) {
  return node === document.body ? false : document.body.contains(node);
}

仕様書

仕様書
DOM
# ref-for-dom-node-contains①

ブラウザーの互換性

関連情報