• 카테고리

    질문 & 답변
  • 세부 분야

    웹 개발

  • 해결 여부

    미해결

activate / inactivate 서로 바꿔도 동작이 가능하게 하려면 어떻게 해야할까요?

20.10.31 22:57 작성 조회수 152

0

function doorHandler(e) {
        const target = e.target;
        
        if (target.classList.contains('door-body')) {
            activate(target.parentNode);
        }
        if (currentTarget) {
            inactivate(currentTarget);
        }
    }

active / inactive 순서에 따라 실행이 되기도하고 안되기도 하는데요, 순서에 상관없이 작동되게 하려면 어떻게 해야할까요?? ㅠㅠ 

inactivate 부분을 else if 로 걸어버리면, 문을 열고 닫는건 되는데 1. 빨간문 활성화 -> 2. 초록문 활성화 시, 기존의 빨간문이 닫히질 않아요 ㅜㅜ.. 

답변 1

답변을 작성해보세요.

0

먼저 열려있던 문을 닫고(inactivate)
새로 클릭한 문을 여는(activate) 순서이기 때문에,
doorHandler 안에서 두 함수의 순서를 바꾸면 동작하지 않습니다.

동작 자체는 어떤 문을 클릭하든지 클릭한 문이 열리고 원래 열려있던 문은 닫히도록 되어있습니다~
아니면 제가 질문하신 의도를 잘 못알아들은걸까요^^;