사이트 내 전체검색
window,document.onload 몇가지 방법
로빈아빠
https://cmd.kr/javascript/773 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를 로딩시키고
1 <script language=JavaScript type=text/JavaScript src=prototype.js></script>
2 <script language="JavaScript">
3 Event.observe(window, 'load', function() { 시작시 실행될 내용 });
4 </script>

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

다음 방법은 addEvent라는 함수를 정의 시킨다음 addEvent를 통해 로딩 시키는 방법 입니다.
01 <SCRIPT type=text/javascript charset=euc-kr>
02 function addEvent(target, en, func)
03 {
04     if (window.addEventListener) 
05     {
06         if ((target == window) && (en.toLowerCase() == "load") && !window.opera && !(!document.all && document.childNodes && !navigator.taintEnabled))
07             document.addEventListener("DOMContentLoaded", func, false);
08         else
09             target.addEventListener(en, func, false);
10     }
11     else if (target.attachEvent) 
12     {
13         if ((target == window) && (en.toLowerCase() == "load"))
14             document.attachEvent("onreadystatechange", function(e) { if (document.readyState == "complete") func(); });
15         else
16             target.attachEvent("on"+en, func);
17     }
18     else 
19     {
20         var __func = eval("target.on"+en);
21   
22         eval("target.on"+en) = function() 
23         {
24             func();
25             __func();
26         }
27     }
28 };
29   
30 function _EventFuntion()
31 {
32     .........
33 }
34 addEvent(window, "load", EventFuntion);
35 </SCRIPT>

댓글목록

등록된 댓글이 없습니다.

831 (2/17P)

Search

Copyright © Cmd 명령어 3.133.157.231