inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[하루 10분|Web Project] HTML/JS/CSS로 나만의 심리테스트 사이트 만들기

화면 전환하기

setTimeout함수 질문

289

khhan1990

작성한 질문수 38

1

안녕하세요. 

수업 듣던 중 setTimeout함수가 잘 이해가 가지 않아서

여러가지 찾아보던 중 궁금한 사항이 있어서 질문 올립니다.

수업 때 버튼을 클릭 했을 때 begin() 함수가 실행되게끔 하기 위해서

function begin() {
    main.style.animation = "fadeOut 1s";
    main.style.WebkitAnimation = "fadeOut 1s";
    setTimeout(() => {
        qna.style.animation = "fadeIn 1s";
        qna.style.WebkitAnimation = "fadeIn 1s";
        setTimeout(() => {
            main.style.display = "none";
            qna.style.display = "block";
        }, 450)
    }, 450);
}

위와 같은 코드를 짜주셨는데

setTimeout함수가 조금 어려워서 여러 내용을 찾고 이것저것 수정해보다가

function begin() {
    main.style.animation = "fadeOut 1s";
        setTimeout(() => {
            main.style.display = "none";
            qna.style.display = "block";
            qna.style.animation = "fadeIn 1s"
        }, 950);
}

위와같이 코드를 바꿔봤더니 실행결과는 똑같이 나오는 것으로 확인되었습니다.

아직도 setTimeout함수가 머릿속에서 잘 정리가 되지 않은상황이라 그런데 이렇게 코드를 짜게 될 경우 어떤 문제가 발생할 수 있는 요인이 있을까요?

javascript bootstrap HTML/CSS

답변 2

1

판다코딩

setTimeout함수는 정해진 시간 이후에 내부의 코드를 실행시켜주는 함수입니다.

첫번째 사진의 코드에서는,

main fadeOut > (450ms) > qna fadeIn > (450) > main display none, qna display block

의 순서로 코드들이 실행될 것이고,

두 번째 사진의 코드에서는

main fadeOut > (950ms) > main display none, qna display block, qna fadeIn

입니다.

뚜렷하게 발생할 수 있을만한 문제는 없을 것 같으나,

아무래도 1번의 흐름이 보다 자연스럽지 않을까요?

0

khhan1990

정리가 확 되는 것 같네요!

감사합니다!

emmet 에디터 설치 하려고 하는데 안 나오네요

0

155

2

결과 이미지랑 글이 안떠요 왜일까요

0

133

1

select 배열 이해를 도와주세요!

0

370

1

result 에서 결과가 안 나와요.

0

366

1

결과 계산하기에서 콘솔이 다르게 찍힙니다.

0

391

1

다음 버튼을 누르면 다음질문으로 넘어가게 만들고 싶어요.

0

380

1

클론코딩 시

0

368

1

결과페이지 선택값 합산하기

0

352

1

select 부분이 이해가 안가서 질문드립니다 ㅠ

0

386

1

index에서 result 페이지로 이동 질문드립니다.

0

431

1

진행바 강의에서요 스테이터스바가 짤립니다

0

377

1

이미지버전에서 부트스트랩 이미지하고 텍스트도 이용하고 싶어요

0

516

1

viewport 가 제대로 작동을 안해요 뭐가 문제일까요?

0

482

1

결과 페이지별 개별링크버튼 추가

0

352

1

뒤로가기

0

423

1

netlify not found 오류

1

1055

1

아톰 에디터 설치

2

936

1

display:block을 사용하는 이유

1

450

1

qIdx수에 따라 for 문이 돌아요 ㅜ.ㅜ

1

374

1

카카오톡 공유하기

1

581

1

질문 개수 5개에 결과 4개

0

427

1

질문 수를 줄이는 방법

1

391

1

강의 순서

1

269

1

결과페이지에서 result-0,1,23,....html 호출하기

1

355

1