Как вызвать функцию onclick по коду, написав расширение javascript? - PullRequest
0 голосов
/ 17 марта 2020

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

Какая фраза, которая описывает такую ​​автоматизацию веб-задач?

Как я могу обнаружить такое всплывающее окно?

Как сделать Я запускаю функцию onclick в этой форме с помощью кода?

Ответы [ 2 ]

0 голосов
/ 17 марта 2020

https://developer.mozilla.org/en-US/docs/Web/API/MutationObserver

Вы можете использовать MutationObserver для конкретного HTML тега / элемента, который отображается каждый раз, когда отображается всплывающее окно. Как только вы получили элемент DOM, нажмите нужную кнопку, чтобы войти в систему на веб-сайте. Сделай для этого скрипт автоматизации.

0 голосов
/ 17 марта 2020

Обычно все, что вам нужно, это уметь идентифицировать уникальный селектор для элемента. Когда вы увидите, что кнопка появляется, щелкните ее правой кнопкой мыши и проверьте ее на панели «Элементы» вашего браузера. Найдите что-то, что делает его уникальным, например, идентификатор или класс (которого нет у другой кнопки), или он является потомком аналогичного уникального контейнера.

Например, кнопка «Опубликовать свой ответ» на стеке Exchange имеет идентификатор submit-button, поэтому вы можете выбрать его с помощью #select-button:

enter image description here

Если у вас есть селектор, либо периодически проверяйте его с интервалом или используйте MutationObserver (более сложный и более дорогой, но он нажимает кнопку КАК МОЖНО СКОРЕЕ и не требует опроса). Когда элемент существует, .click() it.

setInterval(() => {
  const elm = document.querySelector('#my-btn');
  if (elm) {
    elm.click();
  }
}, 1000);

Возможно, вам будет проще поместить этот код в userscript , а не в автономное расширение Chrome - usercripts намного проще для управления ИМО все, что вам нужно сделать, это набрать Javascript, и он готов к go.

...