模拟IE 9中的点击javascript

时间:2013-04-19 13:15:30

标签: javascript internet-explorer event-handling click

我在这里找到了这段代码片段,效果很好但不适用于IE。

var testTwo = document.getElementById('testOne')

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);
  }
}

function testInt(){
eventFire(testTwo, "click");
};
setInterval(testInt, 3000);

谁能告诉我如何让它在IE中运行?

谢谢

2 个答案:

答案 0 :(得分:3)

尝试

function eventFire(el, etype) {
    var event;
    if (document.createEvent) {
        event = document.createEvent("HTMLEvents");
        event.initEvent(etype, true, true);
    } else {
        event = document.createEventObject();
        event.eventType = etype;
    }

    event.eventName = etype;

    if (el.dispatchEvent) {
        el.dispatchEvent(event);
    } else {
        el.fireEvent("on" + etype, event);
    }
}}

演示:Fiddle

取自this question

的逻辑

答案 1 :(得分:0)

您应该可以使用fireEvent来触发事件。 Here is the MSDN article关于它。