프론트엔드 첫걸음

화면이 다 안그려져서 이벤트가 안먹을 때 본문

개발 공부/Javascript

화면이 다 안그려져서 이벤트가 안먹을 때

차정 2022. 8. 12. 13:11

이벤트 위임 

localStorage에 데이터가 저장되는 todoList 를 만들었다.
아이템 추가된 후에 추가된 아이템에 delete버튼을 클릭한 경우 
추가된 아이템을 그린 뒤에 delete 버튼에 이벤트를 걸려고 하니까
delete버튼이 null이라고 하는 오류가 발생했다.
이벤트 위임을 사용하니 해결되었다.

https://stackoverflow.com/questions/16512016/event-listener-in-elements-appended-after-dom-content-loaded

//deleteEvent
document.body.addEventListener('click', function (e) {
  if (e.target.className == 'delete') {
    let $delBtn = e.target;
    let deleteText = $delBtn
      .closest('.shopping-item')
      .querySelector('.itemName').innerHTML;
    let deletedLists = ToDoListArr.filter((e) => e.name != deleteText);
    ToDoListArr = deletedLists;
    saveDatas();
    displayItems();
  }
});

 

'개발 공부 > Javascript' 카테고리의 다른 글

카드 스크롤 애니메이션 1 - (카드 슬라이딩 + 플립)  (0) 2023.01.20
클로저  (0) 2022.10.08
클래스와 오브젝트  (0) 2022.08.07
논리연산자  (0) 2022.08.07
css :root 에 선언해준 변수 값 구하기  (0) 2022.07.26