\(@^0^@)/

[TDL] 04/14 Today's-Done-List 본문

TDL

[TDL] 04/14 Today's-Done-List

minjuuu 2022. 4. 14. 22:46
728x90

- JS 기본 문법

  • undefined & null


- JavaScript to-do-list

 

  • 수정 버튼 클릭 시 해당 텍스트의 끝쪽에 focus

그냥 단순히 저 요소에 focus()를 줄 경우에는 앞쪽에 focus가 된다.
그래서 뒤쪽에 포커싱을 주고 싶을 경우에는
1. 해당 input의 value를 먼저 상수에 저장해놓고
2. 포커싱을 준 뒤에
3. value값을 공백으로 만들면 

이러한 상태가 되겠지?
4. 그 뒤에 저장해두었던 value값을 다시 뿌려주면 텍스트가 밀어내서 포커싱이 뒤쪽으로 가게 됨.

  const changeEditMode = (e) => {
    const $item = e.target.closest('.item')
    const $label = $item.querySelector('label')
    const $editInput = $item.querySelector('input[type="text"]')
    const value = $editInput.value

    if (e.target.className === '수정버튼') {
      $editInput.focus()
      $editInput.value = ''
      $editInput.value = value
    }
  }
  • 취소 버튼 클릭 시 기존의 텍스트로 되돌리기

개발자 도구로 Elements를 살펴보면 label의 text값과 input의 value값은 동일함.
수정 버튼을 누르고 수정할 경우에는 input의 값을 변경하는 것이므로 input 값은 변하겠지만
수정을 해서 confirm버튼을 누르기 전까지 label의 값은 동일하므로 editInput에 label의 text값을 재할당 해준다.

  const changeEditMode = (e) => {
    const $item = e.target.closest('.item')
    const $label = $item.querySelector('label')
    const $editInput = $item.querySelector('input[type="text"]')

    if (e.target.className === '취소버튼') {
      $editInput.value = $label.innerText
    }
  }

17:50 오후 회고 스터디 (만족도 : 7)
초반에 문법 공부할 때 집중 못했는데 뭐를 좀 만들기 시작하니까 확실히 집중도 있게 한 것 같음.
그렇지만 문법 공부를 또 안 하는 건 좀 아닌 거 같은데... 어떻게 해야 하나~


- 자료구조 / 알고리즘 (Js ver.) 강의

쉬운 문제들이라 다 풀리긴 하는데, 해답? 소스들을 보면 너무 짧은 코드로 간단하게 풀어버려서....
긴 내 코드들을 보면 조금 허무한 기분이다ㅠ 그래도 답은 맞으니까 기분은 좋다만 찝찝~하다~


22:50 저녁 회고 스터디 (만족도 : 9)
아직까지는 풀 수 있는 문제들이어서 그런지 집중이 잘 됐다!


[ 출처, 참고 : 제로베이스 프런트엔드 스쿨 ]

728x90

'TDL' 카테고리의 다른 글

[TDL] 04/17 Today's-Done-List  (0) 2022.04.18
[TDL] 04/15 Today's-Done-List  (0) 2022.04.15
[TDL] 04/13 Today's-Done-List  (0) 2022.04.13
[TDL] 04/11 Today's-Done-List  (0) 2022.04.12
[TDL] 04/09 Today's-Done-List  (0) 2022.04.09