dom이 로드된 후 실행됩니다. 인터넷에서 일부 메소드의 논리에 대한 이해가 부족하여 "Jquery Source Code Research(ready function)"라는 기사를 읽고 작성했습니다. 다음 코드는 직접 작성했습니다(자세한 설명은 기재했습니다) 코드 복사 코드는 다음과 같습니다. /xhtml"> <br>var Darren; <br>(function(){ <br>var isReady=false; // 로드되었는지 여부 <br>var readBound=false; // 루프가 호출되었는지 확인 Event <br>var readylist=[]; //이 배열에 실행해야 하는 메서드를 임시로 저장합니다. <br>//브라우저를 결정합니다. 이 메서드는 Cloudgamer JavaScript Library v0.1에서 제공됩니다. <br>var Browser = (함수 ( ua){ <br>var b = { <br>msie: /msie/.test(ua) && !/opera/.test(ua), <br>opera: /opera/.test(ua), <br>safari: /webkit/.test(ua) && !/chrome/.test(ua), <br>firefox: /firefox/.test(ua), <br>chrome: /chrome/.test(ua) <br>}; <br>var vMark = ""; <br>for (var i in b) { <br>if (b[i]) { <br>vMark = i; } <br>if (b.safari) { <br>vMark = "버전"; <br>} <br>b.version = RegExp("(?:" vMark ")[\/: ]([\d . ] )").test(ua) ? RegExp.$1 : "0"; <br>b.ie = b.msie; <br>b.ie6 = b.msie && parsInt(b.version) == 6 ; <br>b.ie7 = b.msie &&parseInt(b.version) == 7; <br>b.ie8 = b.msie &&parseInt(b.version) == 8; 🎜 >})(window.navigator.userAgent.toLowerCase()); <br>functionbindReady() <br>{ <br>if(readBound){ //bindReady 메서드가 한 번만 실행되는지 확인 <br>return ; <br> } <br>readBound=true <br>//IE의 경우 프레임에 중첩되지 않음 <br>if (Browser.msie && window==top) <br>{ <br>(function() <br>if (isReady) { <br>return; <br>} <br>try { <br>document.documentElement.doScroll("left"); //dom이 로드되지 않으면 오류가 보고됩니다. <br>} <br>catch(error) { <br>setTimeout(arguments.callee, 0); //루프에서 상위 함수, 즉 준비 메서드 호출 <br>return; 🎜>Test.Done(); <br> })(); <br>}else if(Browser.firefox)//For FF <br>{ <br>document.addEventListener( "DOMContentLoaded", Test.Done, false ); <br>} <br>} <br>var Test={ <br>ready:function(fn){ <br>bindReady();//로딩 완료 여부 판단 <br>if(isReady) <br>{ <br>fn.call(document) ; //로딩 후 <br>}else{ <br>readylist.push(fn)를 직접 호출합니다. //로딩이 완료되지 않은 경우 이 메서드를 임시로 저장합니다. 나중에 호출하기 위한 준비 목록 배열 <br>} <br>return this; if (!isReady) { <br>isReady= true; <br>} <br>readylist[0].call(document) <br>Darren=Test; <br>}) <br>//Test<br>Darren.ready (function(){ <br>alert("my"); <br>document.getElementById("test").innerHTML="haha" //dom 읽기 성공 <br>}); <br>$(function (){alert("jq")}) <br>window.onload=function(){alert("default")} <br> > < ;body> 테스트