document.getElementById()

국내에 웹 사이트들이 웹 표준을 지키고 OS나 브라우저와 관계 없이 접근성을 향상 시키기 위한 사이트 버그 신고 및 문제 해결을 위한 게시판입니다.
Post Reply
까만도둑

document.getElementById()

Post by 까만도둑 »

불여우에서 아래와 같은 자바에러가 뜹니다.
아래 어떤 글에서 보니 이와 비슷한 내용이 있긴 하던데 솔직히 무슨 말인지 모르겠습니다. ㅠ.ㅠ
고수님들의 도움을 요청합니다.
해당소스는 팝업으로 나타났다가 지정한 시간이 지나면 사라지는 소스입니다.

==================== 에러내용 =================

경고: 글로벌 속성으로 ID/NAME으로 참조된 요소입니다. 대신 W3C 표준인 document.getElementById()를 사용하십시오.
소스 파일: http://rokmc685.com/notice.js
행: 69

Code: Select all

function blendTransEffectShowDv(object, ilifeTime, baddFilterEffect, binCenter){	// 개체, 보일시간, 필터효과사용, 화면중앙
		// coding http://systems.nafree.net/
		var isDisplayNoned=false;

		if(binCenter){
			object.style.position="absolute";
			object.style.top=(document.body.offsetHeight-350)/2;
			object.style.left=(document.body.scrollWidth+(document.body.offsetWidth-document.body.clientWidth)-300)/2;
		}

		if(baddFilterEffect){
			object.style.filter+=";revealTrans(transition=23,duration=0.5) blendTrans(duration=0.5); ";
		}

		if(object.filters && object.filters.blendTrans){
			object.filters.blendTrans.apply();
		}

		if(object.style.display=="none"){
			isDisplayNoned=true;
			object.style.display="block";
		}

		object.style.visibility = "visible";

		if(object.filters && object.filters.blendTrans){
			object.filters.blendTrans.play();
		}

		if(ilifeTime>0){
			if(isDisplayNoned){
				object.UnVisible=function(){
					if(object.filters && object.filters.blendTrans){
						object.filters.blendTrans.apply();
					}
					object.style.display="none";
					object.style.visibility="hidden";
					if(object.filters && object.filters.blendTrans){
						object.filters.blendTrans.play();
					}
				}
			}
			else{
				object.UnVisible=function(){
					if(object.filters && object.filters.blendTrans){
						object.filters.blendTrans.apply();
					}
					object.style.visibility="hidden";
					if(object.filters && object.filters.blendTrans){
						object.filters.blendTrans.play();
					}
				}
			}
			window.setTimeout(object.UnVisible, ilifeTime);
		}

	}

	function blendTransEffectHide(object){
		if(object.filters && object.filters.blendTrans){
			object.filters.blendTrans.apply();
		}
		object.style.visibility="hidden";
		if(object.filters && object.filters.blendTrans){
			object.filters.blendTrans.play();
		}
	} 

	blendTransEffectShowDv(Notice1, 4000, 1, 1);
위 소스에서 제일 마지막 줄

blendTransEffectShowDv(Notice1, 4000, 1, 1);

이 넘이 문제라고 합니다.[/code]
tenshi
Posts: 40
Joined: 2004 11 30 15:19 45
Contact:

Re: document.getElementBy

Post by tenshi »

Code: Select all

blendTransEffectShowDv(Notice1, 4000, 1, 1);
이 부분에서 Notice1이..
아마도 <div id="Notice1"></div> 과 같이 id로 선언된 element인 것 같군요.
element명을 그대로 object로 인식하는 것은 IE에서만 사용가능한 방식이고 또한 표준도 아닙니다.
Notice1을 document.getElementById("Notice1")으로 바꾸면 된다는 에러메시지군요.
document.getElementById는 id를 가진 element에 접근하기 위해 w3c에서 지정한 표준 DOM 언어입니다. :)
오늘....
Posts: 3
Joined: 2005 02 15 14:18 41
Contact:

감사합니다.

Post by 오늘.... »

tenshi님 감사합니다.
덕분에 잘 해결했습니다. ^^*
Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest