테스트 사이트 - 개발 중인 베타 버전입니다

input에 커서가 안들어가는 문제 채택완료

kujira 4년 전 조회 2,520

안녕하세요.

input에 특정 문자를 입력하면 경고창이 뜨는데 이 경고창을 esc로 닫으면 해당 페이지의 

모든 text input에 커서가 안들어가고 입력도 안되네요;;;; 크롬에서만 이러고 IE는 안그러는데

이건 무슨 경우인가요;;;;

댓글을 작성하려면 로그인이 필요합니다.

답변 3개

채택된 답변
+20 포인트
4년 전

해당 만으로는 파악하기가 힘들어 보입니다. 도메인을 올려보시거나 스크립트 에러가 없는지 한번 확인해보세요.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

k
kujira
4년 전
스크립트 에러라고 할것도 없는게;;;;

<input type="text" name="test" onkeypress="characterCheck();">
<script>
function characterCheck(){
alert('aaa');
}
</script>

그냥 이렇게만 해서 제가 말한대로 경고창을 esc로 닫으면 input에서 커서가 없어지고
클릭해도 커서가 다시 들어가지도 않고 입력도 안되고 그러네요

댓글을 작성하려면 로그인이 필요합니다.

Big1
4년 전

이런 건 처음 보네요,,,

onkeydown/onkeyup 으로 이벤트 리스너를 변경해보고 테스트를 해보면

alert 창이 계속 뜹니다.

 

왜냐면 esc 키를 누를 때

다시 key 이벤트가 발생하기 때문이죠.

순서는 keydown -> keypress -> keyup 

 

뭔지 정확히는 모르겠는데

크롬이 이렇게 사용하지 말라고 일부러 prevent 시키는 것 같습니다.

alert 창이 떴을 때도 여전히 key 이벤트를 리슨하고 있으니까요

 

 

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

s
sinbi Expert
4년 전

잘 되나 해보세요. 

https://codepen.io/sinbi/pen/GRrRyrg

 

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인