Как вызвать событие на элементе HTML в IE8? - PullRequest
1 голос
/ 24 марта 2011

Ниже код отлично работает в Firefox, но не в IE8.

Это вызывает событие щелчка мыши на элементе HTML (здесь указано как «узел») и вызывает функцию, уже связанную с этим элементом. Так что это все равно, что запускать событие click для данного элемента программно.
var oEvent = document.createEvent( \"MouseEvents\" ); oEvent.initMouseEvent(\"click\", true, true, window, 1, 1, 1, 1, 1, false, false, false, false, 0, node); node.dispatchEvent(oEvent);
Кто-нибудь может мне помочь заставить его работать в IE8?

Заранее спасибо.

1 Ответ

2 голосов
/ 24 марта 2011

Вам нужен только такой код для Firefox для элементов, у которых еще не было события click!

Просто щелкните элемент в других браузерах - например, node.click ()

Это означает, что вам нужно прослушать событие. Я бы попробовал

if (node.click) node.click();
else if (document.createEvent) {
  var oEvent = document.createEvent("MouseEvents");
  if (oEvent.initMouseEvent) { // just to be sure...
    oEvent.initMouseEvent("click", true, true, window, 1, 1, 1, 1, 1, false, false, false, false, 0, node);  
    node.dispatchEvent(oEvent); 
  }
}
...