The document
dan window
yang objek yang berbeda dan mereka memiliki beberapa acara yang berbeda. Menggunakan addEventListener()
mereka mendengarkan acara yang ditujukan untuk objek yang berbeda. Anda harus menggunakan salah satu yang benar-benar memiliki acara yang Anda minati.
Misalnya, ada "resize"
acara di window
objek yang tidak ada di document
objek.
Misalnya, "DOMContentLoaded"
acara hanya pada document
objek.
Jadi pada dasarnya, Anda perlu tahu objek mana yang menerima peristiwa yang Anda minati dan gunakan .addEventListener()
pada objek tertentu.
Berikut adalah bagan menarik yang menunjukkan jenis objek yang membuat jenis peristiwa mana: https://developer.mozilla.org/en-US/docs/DOM/DOM_event_reference
Jika Anda mendengarkan acara yang disebarkan (seperti acara klik), maka Anda dapat mendengarkan acara itu di objek dokumen atau objek jendela. Satu-satunya perbedaan utama untuk acara yang diperbanyak adalah dalam hal waktu. Acara akan mengenai document
objek sebelum window
objek karena terjadi pertama kali dalam hierarki, tetapi perbedaan itu biasanya tidak penting sehingga Anda dapat memilih salah satunya. Saya merasa umumnya lebih baik untuk memilih objek terdekat ke sumber acara yang memenuhi kebutuhan Anda saat menangani acara yang diperbanyak. Itu akan menunjukkan bahwa Anda memilih document
lebih window
ketika salah akan bekerja. Tetapi, saya sering berpindah lebih dekat ke sumber dan menggunakan document.body
atau bahkan beberapa orang tua yang lebih dekat dalam dokumen (jika mungkin).