20번 문제에 들어가면 정보를 입력해서 제출하는 화면이 나타난다. 소스코드는 다음과 같다. 로 둘러쌓인 부분을 확인해보자 위의 소스코드를 보면 "Submit"버튼을 클릭했을때 ck()함수가 호출된다. ck()함수는 다음과 같은 작업을 한다. 1. 작성되지 않은 항목의 텍스트상자로 커서를 이동시키고 함수를 종료시킨다. 2. 모든 항목이 작성되었지만 code가 오른쪽 회색상자에 적혀있는 것과 다른경우 code의 텍스트 상자로 커서를 이동시키고 함수를 종료시킨다. 3. 1,2에 해당되지 않는 경우 입력한 내용들을 서버에 전송(제출)한다. nickname, comment항목을 모두 입력하고 code도 오른쪽 회색상자에 적혀있는 문장과 같게 입력해서 submit버튼을 클릭하였다. 하지만 Wrong이라는 텍스트가 ..
54번을 클릭하였을때의 화면이다. 시간이 좀 지나면 is뒤에 문자가 한글자씩 나오다가 ?가 나오고 더이상 변하지 않는다. 코드를 확인해 보겠다. XMLHttpRequest는 Ajax요청을 생성하고 전송할 수 있는 객체이다.Ajax(Asynchronous JavaScript and XML)란 자바스크립트를 이용해서 비동기적으로 서버와 브라우저가 통신하는 방식이다. run()함수에서 if(window.ActiveXObject)는 구버전의 IE일 경우 수행되고 else if(window.XMLHttpRequest)는 신버전의 IE(7이상) 또는 다른 웹브라우저(크롬 등) 일 경우 수행된다. 나는 크롬을 이용하였으므로 run()함수에서 XMLHttpRequest객체가 생성되고, 이 객체를 변수 x가 참조하게 되..
16번 문제를 클릭하면 큰별 하나와 작은별 하나가 보인다. 일단 소스코드를 확인하자 4번째 줄에 onkeypress=my(event.keyCode)라는 코드가 있다. onkeypress는 키보드에서 키를 눌렀을때 이벤트를 발생시키는 속성이다. 단, Shift나 Enter, 한/영 등은 인식하지 못한다. event.keyCode는 사용자의 입력키 값을 반환하는 코드이다. 함수 mv()에서는 event.keyCode값이 124일때 location.href=String.fromCharCode(cd)라는 분기문에 의하여어떤 새로운 페이지로 이동하는데, 이 코드를 자세히 살펴보자. location.href location.replace 기능 새로운 페이지로 이동된다. 기존 페이지를 새로운 페이지로 변경시킨다. 형..