사이트 내 전체검색
window,document.onload 몇가지 방법
로빈아빠
https://cmd.kr/javascript/715 URL이 복사되었습니다.

본문

window,document.onload 몇가지 방법

페이지에 자바스크립트 onload 방법의 기본은 아래와 같은 방법입니다.
window.onload = doit(); 나 <body onload="doit()">

window.onload = function(){ 시작시 실행될 내용 }
같은경우는 <body onload=""> 와 같이 사용 될 수 없습니다.
같이 사용하기 위해서는
function window::onload(){ 시작시 실행될 내용 }
를 사용 하면 됩니다. 그러면 <body onload="">가 먼저 실행되고, 이어서 window::onload()가 실행됩니다.


다른 방법으로는 prototype.js 를 이용합니다. 우선 prototype.js를 로딩시키고
<script language=JavaScript type=text/JavaScript src=prototype.js></script>
<script language="JavaScript">
Event.observe(window, 'load', function() { 시작시 실행될 내용 });
</script>

을 하면 됩니다. 페이지 어디도 쓸 수 있습니다. 맨마지막에 넣을 필요가 없죠. 개인적으로 prototype.js를 로딩시킨다면 가장 좋은 것 같습니다.

다음 방법은 addEvent라는 함수를 정의 시킨다음 addEvent를 통해 로딩 시키는 방법 입니다.
<SCRIPT type=text/javascript charset=euc-kr>
function addEvent(target, en, func)
{
	if (window.addEventListener) 
	{
		if ((target == window) && (en.toLowerCase() == "load") && !window.opera && !(!document.all && document.childNodes && !navigator.taintEnabled))
			document.addEventListener("DOMContentLoaded", func, false);
		else
	        target.addEventListener(en, func, false);
    }
    else if (target.attachEvent) 
	{
		if ((target == window) && (en.toLowerCase() == "load"))
	    	document.attachEvent("onreadystatechange", function(e) { if (document.readyState == "complete") func(); });
		else
	        target.attachEvent("on"+en, func);
    }
	else 
	{
        var __func = eval("target.on"+en);

        eval("target.on"+en) = function() 
		{
            func();
            __func();
        }
    }
};

function _EventFuntion()
{
	.........
}
addEvent(window, "load", EventFuntion);
</SCRIPT>

댓글목록

등록된 댓글이 없습니다.

831 (5/17P)

Search

Copyright © Cmd 명령어 18.225.95.229