Firefox 이벤트 객체의 srcElement 참조하기

IE나 크롬 기타등등 브라우져의 이벤트 객체에는 srcElement 프로퍼티가 있어서 이벤트가 발생한 엘리먼트가 어떤 엘리먼트인지 알 수 있다.

그런데 Firefox 에는 srcElement 프로퍼티가 없어서, 별다른 처리를 해 주지 않으면 스크립트 에러가 발생한다.


Firefox 의 이벤트 객체에는 srcElement 프로퍼티가 대신 target 프로퍼티가 있다.

srcElement 프로퍼티를 이용한 부분을 요렇게 바꾸면 모든 브라우져에서 스크립트 에러 없이 원하는 일을 할 수 있다.
function eventHandler(e){
	var el = e.srcElement ? e.srcElement : e.target;

	// el.tagName ......
}


간단한 응용 : 어떤 태그가 클릭됬는지 가져오기
<html>
<head>
	<meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
	
	<script>
		function eventHandler(e){
			var el = e.srcElement ? e.srcElement : e.target;
			alert("클릭한 태그이름 : " + el.tagName);
		}
		document.onclick = eventHandler;
	</script>
</head>
<body>
	<h1>헤더1</h1>
	<h2>헤더2</h2>
</body>
</html>