inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스

▶ JS로 HTML 태그 생성

window.event 문제가 있어요

407

이예찬

작성한 질문수 5

0

섹션2. 훈훈한 Javascript에서

JS로 HTML태그 생성 강의 듣고 있습니다.

 

강의 초반부터 window.event.keyCode === 13을 조건문으로 활용하여 엔터키 입력을 감지하는 코드가 있는데..

 

저 같은 경우 event 부분에 가로줄이 그어지면서

마우스를 올려 문구를 확인해보면

'event' is deprecated. 라는 메시지가 나옵니다.

 

경고 메시지만 출력되고 작동에 이상이 없다면 상관이 없지만,

키 입력 시 마다 브라우저의 콘솔창에 undefined가 뜨고 엔터키 또한 마찬가지입니다.

구글링을 좀 해보니, event를 이용한 키 코드 체크를 하는 것이 권장되지 않는다고 하는데.. 다른 방법이 있나요? 구글링으로 찾은 포스팅들은 이해가 되지 않아서.. 도와주세요.

javascript node.js docker rest-api nestjs

답변 2

0

이예찬

오타 고쳐봤었는데... 해결이 안되네요 ㅜㅜ <form/>태그 공부해서 해볼게요..

0

이예찬

<form><form/>태그 쪽 해결방법이 이해되지 않아서 ChatGPT의 도움을 받아 다른 방법을 사용해봤습니다.

수정한 모습입니다.

event = event || window.event 이 부분이 이해가 잘 되지 않아 추가적으로 물어보았는데 설명을 봐도 이해가 되지를 않네요.. 찝찝한 기분으로 넘어가고 싶지 않은데.. 뭔가 추가적인 설명을 해주실 수 있을까요 ㅜㅜ 아래는 GPT의 설명입니다.

 

GPT :

이 코드는 이벤트 객체를 처리하는 방법 중 하나로, 이벤트 객체를 인자로 받는 핸들러 함수의 매개변수로부터 이벤트 객체를 얻는 것이 보편적입니다. 그러나 이 코드는 이벤트 객체가 전달되지 않은 경우를 대비하여 조치를 취하고 있습니다.

대부분의 브라우저에서는 이벤트 객체를 이벤트 핸들러 함수에 자동으로 전달합니다. 그러나 일부 오래된 브라우저에서는 이러한 기능을 제공하지 않는 경우도 있습니다. 이 경우, 전역 변수인 window.event를 통해 이벤트 객체에 접근할 수 있습니다.

따라서 event = event || window.event; 라인은 다음과 같은 역할을 합니다:

  1. 핸들러 함수의 매개변수인 eventundefined 또는 null이라면, 이벤트 객체가 매개변수로 전달되지 않은 것으로 간주합니다.

  2. 이 경우, window.event를 사용하여 전역적으로 접근 가능한 이벤트 객체를 가져옵니다.

  3. 이를 통해 코드가 오래된 브라우저에서도 동작할 수 있도록 합니다.

이렇게 함으로써 이벤트 핸들러 함수 내에서 event 객체를 사용할 수 있게 됩니다. 이 코드는 브라우저 간의 호환성을 유지하기 위한 것으로, 일반적으로 오래된 브라우저와의 호환성을 고려할 때 사용됩니다. 최신의 브라우저에서는 이러한 접근 방식을 사용할 필요가 없을 수 있습니다.

위 설명에 따르면.. 그냥 window.event로 if문안에서 바로 사용할 때와 어떤 점이 다른것인지 모르겠습니다..

0

노원두

안녕하세요! 예찬님!


코드를 다음과 같이 변경해 보세요!

event.keycode  =>  event.keyCode

 

직접적으로 event로 지정하는 것 보다는, <form />이라는 태그를 사용하시는 방법이 존재하며 많이 사용됩니다!
현재는 키보드 제어가 가능하구나! 정도로 이해해 주시면 좋을 것 같네요!^^

그래프 ql 문서 사용할때 느낌표 남는거 어떻게 없애나요?

0

82

2

강의 전체 소스 코드를 받고싶습니다.

0

75

2

fontawesome 사용 문의

0

75

2

소스 코드 부탁드립니다~

0

84

2

깃 레포지터리 소스

0

79

2

커리큘럼12.css 정렬 에 나오는 과제 정답알고싶어요

0

71

2

10-01 Entity TypeOrmModule.forRoot 에 entities

0

83

3

강의 버전관련 문의입니다

0

101

2

Ubuntu 설치 관련

0

59

1

schema.gql 질문 드립니다.

0

49

1

서버 재실행시 Many to Many

0

100

3

input 관련 문의

0

89

2

Rest API 보다는 graphql이 주된 내용인데

0

130

2

강의 전체 소스코드 받을수있을까요?

0

154

1

도커볼륨 마운트 관련

0

126

2

findOne 타입스크립트오류

0

107

1

http => htrtps 호출 인증서 신뢰 오류

0

347

1

self-signed certificate in certificate chain 에러 발생

0

409

1

mongoose 설치 오류

0

140

1

특정 API, 특정 IP 허용 (단일경로에 CORS 활성화)

0

280

2

08-06

0

175

3

구조랑 패턴 관련해서 질문

0

123

2

mydocker

0

126

2

coolsms statuscode 2000 인데 전송안돼는 경우 확인.

0

155

1