웹마스터 팁

XXX는 객체가 아닙니다.

2003.05.12 23:59

RedEye

분명 논리적으로 문제가 없어 보이는 스크립트인데, 이런 오류가 나오는 경우는 보통 브라우저가 아직 문서 내용을 모두 로딩하지 못한 상태에서 문서 상에 나오는 특정 객체에 접근하려는 시도가 실패했을때 나오는 오류입니다.
전형적인 오류의 원인은 아직 로딩이 되지 않은 이미지 객체의 정보를 조회하려고 하거나, 선언되지 않은 폼 객체의 값을 읽기 혹은 쓰기를 시도하고자 할 때 일어나며, 스크립트 작성자가 해당 스크립트의 실행 타이밍에 대한 이해가 부족한 경우에 많이 발생합니다.

이런 부류의 오류에 대한 해결방법은, 오류가 일어나는 부분에 해당하는 스크립트 코드가 반드시 문서가 로딩이 완료된 이후에 실행될 수 있도록 BODY 태그의 onLoad 이벤트를 통해 실행되도록 하거나, 해당 객체 자체의 이벤트 핸들러로서 연결되어 수행되도록 구조를 변경해야 합니다.
구조 변경이 용이하지 못한 경우에는 해당 스크립트에 이러한 오류를 사전에 점검할 수 있도록 typeof 연산자나 eval 함수 등을 이용해서 오류를 유발할 수 있는 부분의 실행 전에 실행 여부를 결정할 수 있도록 분기를 설정할 수 있으나, 권장할만한 방법은 아닙니다.


출처 : 오래전 야후 검색도중 웹페이지검색에서 발취로 해당사이트명 모름,, 이구,,돌머리 같으니 ㅡㅡ;;

P.S : 이 팁의 원작자나 혹시 이팁을 어느사이트에서 보신분께서는 코멘트로 사이트명을 적어주시면 감사 하겠습니다. ^^;;

저도 께림찍하니 게시판 관계자 분께서 판단후 삭제 바랍니다.


제목 글쓴이 날짜
Marquee 태그를 이용한 간단한 스크립트 [7] 뒹굴리스트 2003.08.06
노프레임 홈페이지 수정 편리하게 &용량줄이기. [9] 세죠위그이 2003.07.15
제로보드 사용시 아이프레임의 크기를 내용에 따라 바꿔주는 스크립트 [7] 쿨리안 2003.06.28
Top, Back 함께사용하기 file sharim 2003.06.11
자바스크립트로 두개 이상의 페이지 동시에 열기. [4] 이성헌 2003.06.08
오른쪽마우스 클릭금지,드래그금지,하단주소 숨기기 한꺼번에~ [8] 한길 2003.06.03
크롬리스(Chromless) 웹어플리케이션 -6 (최종) [4] sundew 2003.05.30
크롬리스(Chromless) 웹어플리케이션 -5 [3] sundew 2003.05.28
오른쪽 버튼 클릭시 북마크창 띄우기(1석2조 방식) [4] RedEye(rinja) 2003.05.23
손님컴퓨터에 내홈피 즐겨찾기 원클릭으로추가시키기 [5] 호호짱 2003.05.23
크롬리스(Chromless) 웹어플리케이션 -3 [5] sundew 2003.05.21
오늘 날짜와 시간 [3] Brown 2003.05.20
크롬리스(Chromless) 웹어플리케이션 -2 [5] sundew 2003.05.18
크롬리스(Chromless) 웹어플리케이션 -1 [1] sundew 2003.05.17
XXX는 객체가 아닙니다. [1] RedEye 2003.05.12
자바스크립트의 활용함에 대해.... [5] RedEye 2003.05.12
자바스크립트의 활용함에 대해 2 .... [1] RedEye 2003.05.18
[벅스 전용] 랜덤 음악 재생 Javascript. [1] sundew 2003.05.11
이벤트 핸들러 (Event Handler) 모음 [2] 아이쿠 2003.05.10
png-24 포맷 알파값 이미지 로딩하기 [9] file D3 2003.04.20