Javascript - document.createEvent не поддерживается объектом - PullRequest
0 голосов
/ 09 октября 2018

Я работаю над проектом автоматизации, в котором я пытаюсь нажать кнопку на веб-сайте.Мне удалось идентифицировать элемент, но когда я пытаюсь использовать document.createEvent, он говорит мне, что объект не поддерживает его.Есть идеи?

function categoryClick() {
  var events = ["mousemove", "mouseover", "focus", "mousedown", "mouseup", "click"];
  var combobox = document.getElementById("category");
  var a = combobox.childNodes;
  var target = a[0].childNodes[0];

  for (var i = 0; i < events.length; i++) {
    var eventObject = document.createEvent("Event");
    eventObject.initEvent(events[i], true, false);

    target.dispatchEvent(eventObject);
  }
}

1 Ответ

0 голосов
/ 09 октября 2018

createEvent амортизируется

См .: https://developer.mozilla.org/en-US/docs/Web/API/Document/createEvent

Его заменили на Event()

См: https://developer.mozilla.org/en-US/docs/Web/API/Event/Event

Так что для вашего кода это должно работать как рефакторинг:

function categoryClick() {
  var events = ["mousemove", "mouseover", "focus", "mousedown", "mouseup", "click"];
  var combobox = document.getElementById("category");
  var a = combobox.childNodes;
  var target = a[0].childNodes[0];

  for (var i = 0; i < events.length; i++) {
    var eventObject = new Event(events[i], {"bubbles":true, "cancelable":false});

    target.dispatchEvent(eventObject);
  }
}
...