events - Javascript dispatchEvent click is not working in IE9 and IE10 -


i'm trying simulate mouse events click, mouseover etc on app build in extjs. i'm using below code simulate click,

function triggerevent(element, eventname) {     if (document.createevent)     {         var evt = document.createevent('mouseevents');         evt.initevent(eventname, true, true);          return element.dispatchevent(evt);     } }  var btn = document.getelementbyid("loginbutton");  triggerevent(btn, "click"); 

this works fine on chrome , firefox never works on ie9 , ie10. if use btn.fireevent('onlclick') works fine in ie9 (not checked in ie10). document.createevent supported in ie9 & ie10 i'm not sure why code not working.

i have had same issue custom events time ago , solved using code found in other question: custom events in ie without using libraries

actually don't need use code, 3 function use wrapper browser compatibility.

but suggest use .click method solve problem more (at least normal click) http://www.w3schools.com/jsref/met_html_click.asp

so

document.getelementbyid("loginbutton").click(); 

i pasting here code sergey gospodarets other question, useful.

    function triggerevent(el,eventname){         var event;         if(document.createevent){             event = document.createevent('htmlevents');             event.initevent(eventname,true,true);         }else if(document.createeventobject){// ie < 9             event = document.createeventobject();             event.eventtype = eventname;         }         event.eventname = eventname;         if(el.dispatchevent){             el.dispatchevent(event);         }else if(el.fireevent && htmlevents['on'+eventname]){// ie < 9             el.fireevent('on'+event.eventtype,event);// can trigger real event (e.g. 'click')         }else if(el[eventname]){             el[eventname]();         }else if(el['on'+eventname]){             el['on'+eventname]();         }     }     function addevent(el,type,handler){         if(el.addeventlistener){             el.addeventlistener(type,handler,false);         }else if(el.attachevent && htmlevents['on'+type]){// ie < 9             el.attachevent('on'+type,handler);         }else{             el['on'+type]=handler;         }     }     function removeevent(el,type,handler){         if(el.removeventlistener){             el.removeeventlistener(type,handler,false);         }else if(el.detachevent && htmlevents['on'+type]){// ie < 9             el.detachevent('on'+type,handler);         }else{             el['on'+type]=null;         }     }      var _body = document.body;     var customeventfunction = function(){         alert('triggered custom event');     }     // subscribe     addevent(_body,'customevent',customeventfunction);     // trigger     triggerevent(_body,'customevent'); 

Comments

Popular posts from this blog

php - Calling a template part from a post -

Firefox SVG shape not printing when it has stroke -

How to mention the localhost in android -