トップページ > コンテンツ > プログラミング入門 > Ajax入門 > JavaScript入門 > イベント編 > イベントを起こす

強制的にイベントを引き起こす方法

以下のように、fireEvent(IE)やdispatchEvent(Firefox等)等を使うことができる。

document.getElementById("xxxx").fireEvent("onclick", event);

var event = document.createEvent("UIEvent"); //イベントの種類については、参考URL記載のDom3levelEvents等を参照。
event.initEvent("change",false,true);
document.getElementById('xxxxx').dispatchEvent(event); 

オブジェクトの状態が変化した時にイベントを発生させる方法

onchange関数をうまく使い、以下のように書くことができる。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<script>
window.onload = test2;
function test() {
   document.getElementById('textarea').onchange(); //ボタンが押された時にも状態変化があったとしてtest2を呼び出す。
                                                   //onchange(引数)として、test2()関数のfunction(testparam)等と記載することで、
                                                   //変数の受け渡しも可能。
}

function test2() {
   document.getElementById('textarea').onchange = function () {
       alert('test2');
   };
}
</script>
</head>
<body>
<input type="button" value="押して" onclick="test();"><br>
<textarea id="textarea">テキストエリアです。</textarea>
</html>

最終更新:2015年02月07日 22:41