javascript onload 이벤트 여러개 걸기
페이지 정보
작성자 서방님 댓글 0건 조회 144회 작성일 12-05-30 13:36본문
기본적으로 onload 함수에는 한개의 함수만 실행된다
예전에 많이 쓰던 방식으로는 태그에 직접 걸어주는 방식과 스크립트로 거는 방식이 있다
태그에 직접 거는 방식
<body onload="수행작업">
스크립트로 작성하는 방식
<script>
window.onload = "수행작업";
</script>
위의 방법들은 onload를 재지정하게 되면 마지막에 정의한 부분만 실행된다
한번에 여러함수를 실행하고 싶을때가 많은데
나의 경우는 두가지 방법을 사용한다.
두번째처럼 함수로 만들어 놓고 그때 그때 호출하는 방법이 제일 좋은것 같다
첫번째
하나의 이벤트에 두개의 메소드를 몰아 넣는 방법외에
또 한가지 해결 방법으로, attachEvent를 사용하여 해당 이벤트에 함수를 추가할 수 있습니다.
body에 있는 onload이벤트는 그대로 두고,
※ attachEvent로 추가된 함수는 detachEvent로 제거하실 수 있습니다.
두번째
예전에 많이 쓰던 방식으로는 태그에 직접 걸어주는 방식과 스크립트로 거는 방식이 있다
태그에 직접 거는 방식
<body onload="수행작업">
스크립트로 작성하는 방식
<script>
window.onload = "수행작업";
</script>
위의 방법들은 onload를 재지정하게 되면 마지막에 정의한 부분만 실행된다
한번에 여러함수를 실행하고 싶을때가 많은데
나의 경우는 두가지 방법을 사용한다.
두번째처럼 함수로 만들어 놓고 그때 그때 호출하는 방법이 제일 좋은것 같다
첫번째
하나의 이벤트에 두개의 메소드를 몰아 넣는 방법외에
또 한가지 해결 방법으로, attachEvent를 사용하여 해당 이벤트에 함수를 추가할 수 있습니다.
body에 있는 onload이벤트는 그대로 두고,
<script type="text/javascript">
window.attchEvent("onload", "수행작업");
</script>
window.attchEvent("onload", "수행작업");
</script>
※ attachEvent로 추가된 함수는 detachEvent로 제거하실 수 있습니다.
두번째
<script type="text/javascript">
addLoadEvent(funLoad);
function addLoadEvent(func){
var oldonload = window.onload;
if(typeof window.onload != 'function'){
window.onload = func;
}else{
window.onload = function(){
oldonload();
func();
};
}
}
function funLoad(){
// 필요한 작업들 입력
}
</script>
addLoadEvent(funLoad);
function addLoadEvent(func){
var oldonload = window.onload;
if(typeof window.onload != 'function'){
window.onload = func;
}else{
window.onload = function(){
oldonload();
func();
};
}
}
function funLoad(){
// 필요한 작업들 입력
}
</script>
댓글목록
등록된 댓글이 없습니다.