소스보기입니다.
엑티브엑스란?
웹브라우저와 연동되는 특정 프로그램을 사용자의 PC에 추가로 설치해 웹브라우저의 기능을 확장시키는 방법.
[소스해석]
1. window.ActiveXObject : 브라우저가 IE일 경우 XMLHttpRequest 객체 구하기
2. ActiveXObject('Msxml2.XMLHTTP') : 신버전
3. ActiveXObject('Microsoft.XMLHTTP') : 구버전
4. window.XMLHttpRequest : IE 외 파이어폭스 오페라 같은 브라우저에서 XMLHttpRequest 객체 구하기
- window.XMLHttpRequest : 페이지의 새로고침없이 URL 로부터 데이터를 받아올 수 있는 객체
5. x.open('GET','?m='+i,false) : GET방식으로 ?m=i URL을 동기식 방식으로 요청을 설청
6. x.send(null) : 요청 전송 , 파라미터가 없으면 null 값으로 전송
7. x.responseText : 서버에 요청하여 응답으로 받은 데이터를 문자열로 반환
8. aview.innerHTML=x.responseText : 응답받은 문자열을 id가 aview 태그에 출력
9. setTimeout("answer(0)",1000) : 1초후에 answer(0)을 실행
answer()함수에 인자를 1씩 증가하면 서버에 GET요청을 통해 결과값을 받아오고 화면에 출력해주고 있습니다.
aview.innerHTML=x.responseText 이부분을 살펴보면 결과값을 aview에 덮어 쓰는 형태이므로 연속적으로 문자열을 출력하기 위해서는 aview.innerHTML+=x.responseText 이와 같은 방법을 사용할 수 있습니다.
if(x.responseText=="") aview.innerHTML="?";이 부분은 응답이 없을 경우 '?'(물음표)를 aview에 덮어쓰기 때문에 위 부분은 삭제하면 우리가 원하는 문자열을 연속적으로 출력할 수 있습니다.
[소스코드 수정 후 console에서 실행]