onload属性 onunload属性
Updated / Published
onload
属性は body
要素に指定した場合はその文書全体の読み込みが完了したときに、frameset
要素に指定した場合はフレーム全ての読み込みが完了したときに起動するスクリプトを指定するイベント属性(イベントハンドラ)です。発生タイミングはページ内容の全ての読み込みが完了したときのため、文書内にapplet
要素, embed
要素, img
要素, object
要素などによるオブジェクトが埋め込まれていれば、これらオブジェクトの読み込みが終わるまでonload
属性のイベントは発生しません。
onunload
属性は body
要素に指定した場合はその文書が閉じられるときに、frameset
要素に指定した場合は全てのフレームが閉じられるときに起動するスクリプトを指定するイベント属性です。文書やフレームが閉じられるときというのは、同一ウインドウ内でその文書(フレーム)から別の文書(フレーム)に移動したときやウインドウを閉じたときのことです。
onload
属性, onunload
属性の DTD(文書型定義)は body
要素と frameset
要素のどちらに指定するかによって異なります。body
要素の場合は HTML4.01, XHTML1.0, XHTML1.1 の全てのバージョンで指定することができます。これに対して frameset
要素の場合は HTML4.01 Frameset と XHTML1.0 Frameset にのみ指定でき、HTML4, XHTML1.0 のバージョンでは非推奨とされ、XHTML1.1 においては frameset
要素自体を使用することができません。
- バージョン
- body要素の場合
- HTML4.01(S,T,F)
- XHTML1.0(S,T,F)
- XHTML1.1
- HTML4.01(F)
- XHTML1.0(F)
- 必須
- -
- 非推奨
- body要素の場合
-
frameset要素の場合- HTML4.01 非推奨
- XHTML1.0 非推奨
- XHTML1.1 廃止
- 属性値
- スクリプト
onload属性 onunload属性を指定できる要素型
onload属性 onunload属性のサンプル
次のスクリプトではこのページを読み込んでから1秒後の経過時間を表示します。
<script type="text/javascript">
hour=0; min=0; sec=0;
function count() {
sec++;
if(sec == 60) { min++; sec=0;
if(min==60) { hour++; min=0; } }
h=hour; m=min; s=sec;
if(h<10){h="0"+h;} if(m<10){m="0"+m;} if(s<10){s="0"+s;}
document.getElementById('chktm').value=h+":"+m+":"+s;
}
</script>
......
<body onload="setInterval('count()',1000)">
<p>経過時間:
<input type="text" name="chktm" id="chktm"
size="8" value="00:00:00"></p>