Javascriptをはじめ、Ajax、jQueryの著書多数のガイドが、何かと最近騒がれているJa…
Javascript関連情報
更新日:2005年03月01日
インラインからonloadやonclickなどの基本的なイベントハンドラをHTMLから分離するJavaScriptのサンプルを紹介します。

| win | mac | linux | ||||||||
| n7 | m1 | e6 | o7 | n7 | m1 | e5 | s1 | n7 | m1 | k3 |
| ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
<form name = "form1">
<input type = "button"
name = "test1"
onclick = "alert('普通のイベントハンドラです')">
</form>
一般的なonclickイベントハンドラです。
<script>
<!--
function ini2(){ document.form2.test2.onclick = testFnc2
}
function testFnc2(){
alert('onloadをBODY要素に書いてみます')
}
//-->
</script>
<body onload = "ini2()">
<form name = "form2">
<input type = "button"
name = "test2"
value = "クリックしてね">
</form>
とりあえず、onclickをinputタグから切り離してみました。これは、 関数testFnc2を省略して次のような書き方もできます。
<script>
<!--
function ini3(){
document.form3.test3.onclick = function (){ alert('onloadをBODY要素に書いてみます') }
}
//-->
</script>
<body onload = "ini3()">
<form name = "form3">
<input type = "button"
name = "test3"
value = "クリックしてね">
</form>
サンプル2も3も、onclickをinputタグから切り離していますが、onclickイベントを セットするためのonloadイベントをBODYタグへ書いてしまっています。
<script>
<!--
//ページ構築後にしか設定できません
window.onload = function ini(){
//要素test4へonclickイベントをセットする document.form4.test4.onclick = function (){ alert('HTMLから切り離されました') }
}
//-->
</script>
<form name = "form4">
<input type = "button"
name = "test4"
value = "クリックしてね">
</form>
これでonloadごと、onclickハンドラがHTMLから切り離されました。 人気Javascriptランキング
Powered by 価格.com