JavaScript를 사용하여 웹 사이트를 만들고 있습니다. JS 부분의 목적은 내 자신의 키보드 핸들러를 특정 텍스트 필드에 첨부하는 것입니다. 키 코드와 함께 경고 상자를 표시하는 세 개의 필드 결과의의 문자를 입력, 파이어 폭스, 오페라와 크롬에서
http://jsfiddle.net/k9s3n/1/
: 나는이 바이올린처럼 간단한 코드로 문제를 좁힐 관리 . 인터넷 익스플로러 (제 경우 IE8은 보통 지원하는 가장 낮은 버전입니다) 그러나 input3
만 제대로 작동합니다. 즉, 키를 놓을 때 대화 상자를 표시하는 유일한 필드입니다. 다른 두 개의 입력란에 아무런 결과도 입력하지 않으면 콘솔에 오류가 기록됩니다. keyCode is null or isn't an object
(오류 메시지가 맞는지 확실하지 않아 모국어로 번역했습니다).
브라우저와 상관없이 세 번째 솔루션 만 작동하는 것으로 보입니다.하지만 제 시나리오에서는 첫 번째 또는 두 번째 솔루션을 사용해야합니다.이벤트 핸들러가 Internet Explorer에서 작동하지 않습니다.
내가 추가 조사를 위해 또 다른 바이올린 만든 : 버튼의
http://jsfiddle.net/bSdaJ/
모두를 클릭하면 메시지 상자를 표시하도록합니다. Firefox, Opera 및 Chrome에서는 상자에 "[object MouseEvent]"라고 표시되지만 IE에서는 "undefined"라고 표시됩니다.
어떻게해야합니까? 사전에 도움을 주셔서 감사합니다.
P. 첫 번째 바이올린에 표시된 것처럼 인라인 이벤트 처리를 사용하면 모든 것이 잘 작동합니다. 그러나이 프로젝트의 목표는 HTML과 JS를 완전히 분리하는 것이므로 사용할 수 없습니다. 나는 친구를 위해이 일을하고 있으며, HTML 부분을 명확하고 명확한 마크 업 코드로 만들고 싶다.
합니다. 바이올린은 IE에서 당신을 위해 작동하지 않습니다? –
아니요, 그렇지 않습니다. IE9는 표준을 준수하는 것 같습니다. – rhino
어떤 IE 버전을 사용하고 있습니까? –