異なるオブジェクトであり、彼らはいくつかの異なるイベントがあります。それらを使用すると、別のオブジェクトを宛先とするイベントをリッスンします。興味のあるイベントが実際にあるものを使用する必要があります。document
window
addEventListener()
たとえば"resize"
、window
オブジェクト上にないオブジェクトのイベントがありdocument
ます。
たとえば、"DOMContentLoaded"
イベントはdocument
オブジェクト上でのみ発生します。
したがって、基本的には、関心のあるイベントを受信し、.addEventListener()
その特定のオブジェクトで使用するオブジェクトを知る必要があります。
次の興味深いグラフは、どのタイプのオブジェクトがどのタイプのイベントを作成するかを示しています。https://developer.mozilla.org/en-US/docs/DOM/DOM_event_reference
伝播されたイベント(クリックイベントなど)をリッスンしている場合は、ドキュメントオブジェクトまたはウィンドウオブジェクトのいずれかでそのイベントをリッスンできます。伝播されるイベントの唯一の主な違いはタイミングです。イベントは階層の最初に発生するため、document
オブジェクトの前にwindow
オブジェクトにヒットしますが、その違いは通常重要ではないため、どちらを選択してもかまいません。伝搬されたイベントを処理するときに、ニーズを満たすイベントのソースに最も近いオブジェクトを選択する方が一般的には良いと思います。それはあなたが選ぶことを示唆しているdocument
以上のwindow
いずれかが動作するとき。しかし、私はしばしばソースにさらに近づいて使用しますdocument.body
、ドキュメント内の共通の親を使用します(可能な場合)。