tags:

views:

43

answers:

2

Hi,

In my html, I have an html element with a mouseover event handler. Can you please tell me if it is possible for me to invoke that event handler programmically in JavaScript?

Thank you.

A: 

You can use the fireEvent method available for IE. I am not sure if this will work for FF or other browsers. you can simply fire the event by

buttonObject.fireEvent('onclick');

For more details have a look at MSDN.

Abdel Olakara
+1  A: 

It is possible. Here's a cross browser function to fire an event:

function eventFire(el, etype){
    if (el.fireEvent) {
      el.fireEvent('on' + etype);
    } else {
      var evObj = document.createEvent('Events');
      evObj.initEvent(etype, true, false);
      el.dispatchEvent(evObj);
    }
}
// => exmaples
// => eventFire(myDiv,'mouseover');
// => eventFire(myButton,'click');
KooiInc
Is usually recommended to check the standard features first (`document.createEvent` in this example) and later the proprietary ones...
CMS