Monday, December 31, 2012

initMouseEvent()

Metode MouseEvent.initMouseEvent() meng-initialize objek Event yang dibuat metode DocumentEvent.createEvent(), yang mana nilai dari parameter eventType adalah 'MouseEvent'.

Setelah di-initialize dengan metode MouseEvent.initMouseEvent() ini, event baru bisa di kirim ke target si-event via metode EventTarget.dispatchEvent().

Sintaks:

Event.initMouseEvent(typeArg, canBubbleArg, cancelableArg, viewArg, detailArg, screenXArg, screenYArg, clientXArg, clientYArg, ctrlKeyArg, altKeyArg, shiftKeyArg, metaKeyArg, buttonArg, relatedTargetArg);

Berikut contoh penggunaan metode ini:

<SCRIPT TYPE="text/javascript"> function InitMouseDown(event) { if (event.initMouseEvent) { var newMousedownEvent = document.createEvent("MouseEvent"); newMousedownEvent.initMouseEvent("mousedown", true, true, window, 0, event.screenX, event.screenY, event.clientX, event.clientY, event.ctrlKey, event.altKey, event.shiftKey, event.metaKey, 0, null); event.target.dispatchEvent(newMousedownEvent); } } </SCRIPT> <BUTTON ONMOUSEOVER="InitMouseDown(event)" ONMOUSEDOWN="alert('Event \'' + event.type + '\' terjadi')">MouseOver disini</BUTTON>

Sebenar bisa menggunakan metode Event.initEvent() untuk meng-initialize setiap objek Event yang di buat via DocumentEvent.createEvent() dengan eventType apapun. Untuk contoh fungsi di atas, bisa mempunyai bentuk seperti berikut:

function InitMouseDown(event) { var newMousedownEvent = document.createEvent("MouseEvents"); newMousedownEvent.initEvent("mousedown", true, true); event.target.dispatchEvent(newMousedownEvent); }