일반적인 접근 방식: 코드 복사 코드는 다음과 같습니다. <BR>var testBtn = document.getElementById('test'); <BR>testBtn.onclick = testFun; <BR>function testFun(e) <BR>{ <BR>var evt = e || window.event <BR>alert(evt)} <BR></ script> <BR><BR> 또는 코드 복사 코드는 다음과 같습니다. var testBtn = document .getElementById('test'); <BR>if(window.addEventListener) <BR>{ <BR>testBtn.addEventListener('click', testFun, false) <BR>} <BR>else if(window.attachEvent ) <BR>{ <BR> testBtn.attachEvent('onclick', testFun) <BR>} <BR>function testFun(e) <BR>{ <BR>var evt = e || >alert(evt); <BR>} <BR> 반환된 값은 모두 "[object Event]"입니다. 그런데 이 방법이라면 어떨까요? 코드 복사 코드는 다음과 같습니다. <div class="codebody" id="code51469">function testFun_1() <BR>{ <BR>//이것은 어떻게 얻나요? <BR>} <BR> “내정은 바이두에, 대외는 구글에 물어보세요.” 이 말은 사실입니다. 검색해 보니 답변이 꽤 많은데 대부분 비슷합니다(우연의 일치일 수도 있습니다). http://www.jb51.net/article/19408.htm http://www.cnblogs.com/cuixiping/archive/2008/04/13/1150847.html 어리석은 노인의 이 기사(재게시물처럼 보임)는 매우 통찰력이 있습니다. 코드 복사 코드는 다음과 같습니다. <div class="codebody" id="code90990">function testFun_1() <BR>{ <BR>var evt = getEvent(); <BR>alert(evt); <BR>} <BR>function getEvent(){ <BR>if(window.event) return window.event; //여기에서는 개체 감지가 더 적합합니다. <BR> func=getEvent.caller; <BR>while(func!=null){ <BR>var arg0=func.arguments[0]; <BR>if(arg0){ <BR>if((arg0.constructor ==이벤트 || arg0.constructor ==MouseEvent) <BR>|| (typeof(arg0)=="object" && arg0.preventDefault && arg0.stopPropagation)){ <BR>return arg0; >} <BR>func=func.caller; <BR>} <BR>return null; <BR>} <BR> 일반적으로 이러한 종류의 삽입은 거의 사용되지 않는 방법입니다. 이 방법은 유지 관리 및 개발 문제를 일으킬 수 있으므로 권장되지 않습니다.