ready() / load() 이벤트 메서드

imjingu·2023년 7월 25일
0

개발공부

목록 보기
213/481

ready() / load() 이벤트 메서드
ready() : 사용자가 사이트를 방문할 때 요청한 HTML 문서 객체(document)의 로딩이 끝나면 이벤트를 발생
load() : 외부에 연동된 소스 (iframe, img, video)의 로딩이 끝나면 이벤트 발생

기본형
$(document).ready(function() { 자바 스크립트 코드;});
$(document).on("ready", function() { 자바 스크립트 코드;});
$(window).load(function() { 자바 스크립트 코드;}); -> 제이쿼리 3버젼 부터 지원이 중단됨
$(window).on("load", function() { 자바 스크립트 코드;});

  1. 브라우저가 html을 다운로드

  2. 브라우저가 html을 기준으로 문서객체모델을 생성 (노드와 트리구조)

  3. 브라우저가 이미지와 기타 파일을 다운로드

    자바스크립트와 제이쿼리가 문서에 접근하는 것은 문서객체모델에 접근하는 것
    문서객체모델이 완성이 안되었을때 문서에 접근하면 오류가 나는 경우가 있음
    그래서 자바스크립트와 제이쿼리는 2번이 완료 된 후에 실행 하도록 함

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
    <title>Document</title>
    <script>
        

        $(function() {
            $(document).ready(function() {
                let h1 = $('.img1').height(); 
                console.log('ready :', h1); // html은 로딩, 이미지는 로딩 전 출력,
            });

            $(window).on('load',function() {
                let h2 = $('.img1').height();
                console.log('load :', h2); // 이미지 로딩 후 출력
            });
        });
    </script>
</head>
<body>
    <p>
        <img src="http://place-hold.it/400X400" class="img1">
    </p>
</body>
</html>

0개의 댓글