[JavaScript] λ¬Έμμ λ‘λμμ - onload / DOMContentLoaded
λ¬Έμμ λ‘λμμ - onload / DOMContentLoaded
π‘μΌλ°μ μΌλ‘, μ€ν¬λ¦½νΈ λ¬Έμμ λ§μ§λ§
</body>
μ΄μ μ μ½μ νλ©΄ κ΅³μ΄ μ΄λ²€νΈλ₯Ό μ΄μ©νμ¬ νλ‘κ·Έλλ°μ μ²λ¦¬ν νμκ° μλ€.λ€λ§,
- λ¬Έμμ
<head>
μμμ μ€ν¬λ¦½νΈκ° μ½μ λκ±°λ,- μΈλΆμ νμΌμ μ μλμ΄ μλ€λ©΄ μ΄λ²€νΈλ₯Ό λ¬Έμμ λ‘λ μμ μ λ§κ² μ²λ¦¬ν΄μΌ νλ€.
1. onload
- λ¬Έμμ λͺ¨λ μ½ν μΈ (images, script, css, etc)κ° λ‘λλ ν λ°μνλ μ΄λ²€νΈ. (load μ΄λ²€νΈλΌ νλ€.)
window.onload = function() {
// μ€νλ μ½λ
}
-
λ¬Έμμ ν¬ν¨ν λͺ¨λ μ½ν μΈ κ° λ‘λλ ν μ€νλλ―λ‘ λΆνμν λ‘λ© μκ°μ΄ μΆκ°λ μ μλ€.
-
λμΌν λ¬Έμμ μ€μ§
onload
λ νλλ§ μ‘΄μ¬ν΄μΌ νλ€.- μ€λ³΅λ κ²½μ°, λ§μ§λ§ μ μΈμ΄ μ€ν
- μΈλΆ λΌμ΄λΈλ¬λ¦¬μμ μ΄λ―Έ μ μΈλ κ²½μ°, μ΄λ₯Ό μ°Ύμ νλλ‘ ν©μΉλ κ³Όμ μ΄ νμνλ€.
-
μΈλΆμ μ§μ(iframe, image, script)μ μ¬μ©νλ κ²½μ°μλ ν΄λΉλλ€.
<body>
μμμ μμ±(attribute)μΌλ‘ μ§μ λ μ μλ€.
<body onload="μ€νλ μ½λ"></body>
- μμ κ°μ΄ μ¬μ©λ κ²½μ°,
window.onload
λ‘ μ§μ λ κ²μ 무μλλ€.
- window κ°μ²΄λΏλ§ μλλΌ μνλ κ°μ²΄(object)κ° λ‘λλμμ λ μ€νλ μ½λλ‘ μ€μ ν μ μλ€.
document.getElementById('myFrame').onload = function() {
// μ€νλ μ½λ
}
- μ΄λ²€νΈλ₯Ό μ§μ μ°κ²°ν μλ μλ€.
window.addEventListener('load', function() {
// μ€νλ μ½λ
});
jQuery load
jQueryμμλ onloadμ κ°μ λμμ νλ load λ©μλλ₯Ό μ 곡νλ€.
// jQuery
$(window).load(function() {
// μ€νλ μ½λ
});
2. DOMContentLoaded
HTMLκ³Ό scriptκ° λ‘λλ μμ μ λ°μνλ μ΄λ²€νΈ.
window.addEventListener('DOMContentLoaded', function() {
// μ€νλ μ½λ
});
- onload μ΄λ²€νΈλ³΄λ€ λ¨Όμ λ°μ. λΉ λ₯Έ μ€νμλκ° νμν λ μ ν©νλ€.
- IE8 μ΄νμμλ μ§μνμ§ μλλ€.
jQuery ready
μλ°μ€ν¬λ¦½νΈμ DOM νΈλ¦¬κ° μ€λΉλμμ λμ μμ μ 컨νΈλ‘€νλ λ©μλλ‘ DOMContentLoadedμ jQueryλ²μ μ΄λΌ μκ°νμ.
// jQuery
$(documenet).ready(function() {
// μ€νλ μ½λ
});
- onload μ΄λ²€νΈλ³΄λ€ λ¨Όμ λ°μνλ€. μ¦, λ¬Έμμ λͺ¨λ μμμ΄ λ€μ΄λ‘λλμμ λ λ°μνλ onloadμ λ¬λ¦¬, DOM νΈλ¦¬λ§ μμ±λλ©΄ λ°λ‘ λ°μνλ―λ‘ λΉ λ₯Έ μ€ν μλκ° νμν λ μ ν©νλ€.
- μ¬λ¬λ² μ¬μ©λλ©΄ μ μΈ μμμ λ°λΌ μμ°¨μ μΌλ‘ μ€νλλ€.
2020/02/05 - [π©π»π»DEVELOPE/jQuery] - [jQuery] ready() load() μ°¨μ΄