js
JS - 윈도우 이벤트
브라우저에 변화가 발생하면 자동으로 실행될 이벤트를 설정할 수 있습니다.
이벤트 | 설 명 |
---|---|
onload | 페이지가 모두 로드되었을 때 |
onpageshow | 페이지가 로드되기 시작할 때 |
onunload | 페이지를 빠져 나갈 때 |
onresize | 브라우저 창 크기를 조정할 때 |
onafterprint | 문서를 인쇄 된 후에 실행할 이벤트 |
onbeforeprint | 문서를 인쇄하기 전에 실행할 이벤트 |
onbeforeunload | 현재 페이지에서 새로고침하거나 벗어나려고 할 때 (사이트에서 나가시겠습니까? 와 같은 대화상자가 뜸) |
onabort | 이미지를 읽어 들이는 중 사용자가 중지시켰을 때 |
onerror | 문서나 이미지를 로드하는 중에 오류가 발생하면 |
onhashchange | URL의 앵커가 변경되었을 때 |
onoffline | 브라우저가 오프라인으로 작동하기 시작할 떼 |
ononline | 브라우저가 온라인으로 작동하기 시작할 때 |
onpopstate | 브라우저 히스토리가 바뀔 때 (이전 페이지나 다른 페이지로 이동할 때 등) |
onstorage | 웹 저장소 영역이 업데이트될 때
|
onload 이벤트
onload 이벤트는 브라우저가 문서를 모두 읽어 들였을 때 이벤트가 발생합니다.
<script>
window.onload = function(){
alert("브라우저가 페이지를 로드하였습니다.");
}
</script>
onresize 이벤트
onresize 이벤트는 브라우저 창 크기가 바뀔 때 이벤트가 발생합니다.
<script>
addEventListener("resize", event);
function event(){
alert("창 크기가 바뀌었습니다.");
}
</script>
onbeforeunload 이벤트
onbeforeunload 는 새로고침하거나 현재 페이지를 벗어나려고 할 때 이벤트가 발생합니다.
<html>
<body onbeforeunload="return a();">
<a href="http://habonyphp.com">홈으로 이동</a>
<script>
function a(){
return "false";
}
</script>
</body>
</html>
<a href="http://habonyphp.com">홈으로 이동</a>
<script>
addEventListener('beforeunload', onbeforeunload);
function onbeforeunload(e) {
e.returnValue = "false";
};
</script>
onerror 이벤트
onerror 이벤트는 로드하려는 문서나 파일에서 오류가 발생할 때 이벤트를 처리합니다. 예제는 해당 이미지를 읽어 들이지 못할 때 "no_img.png"로 대체합니다.
<img src="habony.jpg" id="img">
<script>
var img = document.getElementById("img");
img.addEventListener("error", event);
function event(){
img.src = "no_img.png";
}
</script>
다음은 오디오나 비디오 재생에 실페할 때 처리하는 방법을 설명합니다.
<h3>Organ</h3>
<audio src="sound/organ.mp3" controls onerror="fail(event)">
<p>이 브라우저는 오디오를 재생할 수 없습니다.</p>
</audio>
<script>
function fail(e){
if(e.target.error.code == e.target.error.MEDIA_ERR_ABORTED){
alert("사용자가 재생을 중지했습니다.");
}else if(e.target.error.code == e.target.error.MEDIA_ERR_NETWORK){
alert("네트워크 에러");
}else if(e.target.error.code == e.target.error.MEDIA_ERR_DECODE){
alert("디코드 문제");
}else if(e.target.error.code == e.target.error.MEDIA_ERR_SRC_NOT_SUPPORTED){
alert("지원되지 않는 파일 형식이거나 파일을 찾을 수 없습니다.");
}else{
alert("알 수 없는 오류가 발생했습니다.");
}
}
</script>
0 댓글