- window.onload같은 경우 전체 페이지의 모든 외부리소스와 이미지가 브라우저에 불리워진 이후에
작동을 하게 되어 이미지가 안뜨거나 딜레이가 생길때는 그 만큼의 시간을 기다려야 하는

문제가 있다.

또한 외부 링크나 파일을 인클루드 했을때 그 안에 window.onload 스크립트가 또 존재하면 둘중에

하나만 적용이 되는 사태가 생긴다.

더 복잡하게는 <body onload="javascript:gogogo();" >와 같이 body에서 onload를 쓰면 모든

window.onload가 실행되지 않는 일이 나타난다.

이런 문제를 해결하기 위해서인지 jQuery에서는 $(document).ready() 함수를 제공한다.

이 함수의 경우 외부 리소스 및 이미지와는 상관없이 DOM데이터만 로드가 완료되면 바로

실행이 되는 함수이다. 또한 중복해서 사용을 해도 그 순서대로 모두 실행이 된다.

ex)

<script type="text/javascript">
window.onload=function() { alert("ccc"); }
$(document).ready(function() { alert("aaa"); });
$(document).ready(function() { alert("bbb"); });

</script>
* 동작순서는 aaa->bbb->ccc 순서로 나타나게 된다.

*자바스크립트는 일반적으로 DOM이 완전히 로드되고 난 후에만 자바스크립트 코드를 수행한다.


출처 : 용돌이

'IT > Script' 카테고리의 다른 글

xmlhttprequest_header  (0) 2020.01.29
[script] radio 동일한 이름의 배열 체크하기  (0) 2020.01.20
[script] 천단위 , 밑 기타등등  (0) 2020.01.20

+ Recent posts