고슴맨쉬
망치와 공(空)
고슴맨쉬
  • 분류 전체보기 (155)
    • 💡 UXUI (4)
      • UXUI (2)
      • UI (2)
      • UX (0)
    • 🟨 JavaScript (66)
      • 개념 (42)
      • 정리 (2)
      • 문제풀기 (프로그래머스, 코딩애플) (15)
      • 응용하여 자동화or문제해결하기 (2)
      • 기타 (5)
    • ⚛️ React (49)
      • 개념 (27)
      • 개념(Redux) (3)
      • 정리 (4)
      • 문제풀기 (코딩애플: React) (15)
    • 📘 TypeScript (10)
      • 개념 (8)
      • 문제풀기 (코딩애플) (2)
    • 🌐 HTML,CSS (18)
      • 실무에서 자주 발생한 오류들 (10)
      • 뒤늦게 알아서 뼈아픈 유용한 CSS (6)
      • 기타 자주 쓰는 CSS (2)
    • 💻 CS (8)
      • CS (5)
      • 정규표현식 (2)
      • Git,Github (1)

태그

  • class
  • state
  • json
  • Ajax
  • useEffect
  • array
  • UXUI
  • 오류
  • 삼항연산자
  • react
  • CSS
  • 프로그래머스
  • axios
  • Props
  • 코딩애플
  • TypeScript
  • JavaScript
  • CS
  • object
  • redux
전체 방문자
오늘
어제
hELLO · Designed By 정상우.
고슴맨쉬

망치와 공(空)

🟨 JavaScript/문제풀기 (프로그래머스, 코딩애플)

Level 1 : 1~5 (숙제 및 깨달은 점)

2023. 1. 2. 20:29

1. 폰트사이즈 변경하기

document.getElementById('hello').style.fontSize = '16px

2. 알림창 열기/닫기

let alertBox = document.getElementsByClassName('alert-box');
let openBtn = document.getElementsByClassName('open');
let closeBtn = document.getElementsByClassName('close');

openBtn[0].addEventListener("click", function() {
    alertBox[0].style.display = "block";
})
closeBtn[0].addEventListener("click", function() {
    alertBox[0].style.display = "none";
})

깨달은 점 : getElementsByClassName으로 가져온 요소는 배열이므로 [0]을 추가해줘야 인식된다.


3. 알림창 열기/닫기 및 알림창 텍스트 변경하기

let alertBox = document.getElementById('alert');
function alertBtn(styleDisplay, innerText) {
    alertBox.getElementsByTagName('p')[0].innerHTML = innerText;
    alertBox.style.display = styleDisplay;
}

깨달은 점 : innerHTML은 안에 있는 태그 전체를 포함해 변환해버린다. getElementsByTagName으로 특정해서 바꿔주었다.


4. 네비게이션 바 햄버거 버튼 구현하기

document.getElementsByClassName('navbar-toggler')[0].addEventListener('click', function(){
    document.getElementsByClassName('list-group')[0].classList.toggle('show');
})

깨달은 점 : element.className += ''는 클래스명에 문자열을 입력하는 것이므로 클릭할 때마다 반복해서 추가되며 문자 옆에 스페이스를 입력해야 한다. element.classList.add('')는 계속 클릭하더라도 클래스가 한 번만 나타난다. element.classList.toggle('')는 클릭시 토글된다.


5. 모달팝업 구현하기

document.querySelector('#modal-btn').addEventListener('click',modalToggle);
document.querySelector('#close').addEventListener('click', modalToggle);

function modalToggle() {
    document.querySelectorAll('.black-bg')[0].classList.toggle('show');
}

출처 : 코딩애플 https://codingapple.com/

저작자표시 비영리 동일조건 (새창열림)

'🟨 JavaScript > 문제풀기 (프로그래머스, 코딩애플)' 카테고리의 다른 글

Level 3 : 1~3 (array, object)  (0) 2023.01.31
[중요] Level 2 : 14,15(숙제 및 깨달은 점)_for, 버블링활용축약버전  (0) 2023.01.13
Level 2 : 6~13(숙제 및 깨달은 점)_scroll  (0) 2023.01.12
Level 2 : 1~5 (숙제 및 깨달은 점)_if문  (0) 2023.01.09
Level 1 : 6~12 (숙제 및 깨달은 점)  (0) 2023.01.08
    '🟨 JavaScript/문제풀기 (프로그래머스, 코딩애플)' 카테고리의 다른 글
    • [중요] Level 2 : 14,15(숙제 및 깨달은 점)_for, 버블링활용축약버전
    • Level 2 : 6~13(숙제 및 깨달은 점)_scroll
    • Level 2 : 1~5 (숙제 및 깨달은 점)_if문
    • Level 1 : 6~12 (숙제 및 깨달은 점)
    고슴맨쉬
    고슴맨쉬
    부수되 집착하지 않고, 이해하되 머무르지 않기

    티스토리툴바