Часть моей работы - проверять некоторые записи, которые кто-то другой загружает на официальный сайт / webtool.В большинстве случаев я уже проверял квитанции лично, поэтому другая проверка на веб-инструменте на самом деле не нужна.Мне все еще нужно пройти через множество ревизий вручную, чтобы оставить комментарий в определенном месте и изменить раскрывающееся поле.
Я хочу автоматизировать этот процесс и пытаюсь собрать аддон Firefoxэто сделало бы это для меня, так что я также могу поделиться им с некоторыми из моих коллег.
У меня практически нет опыта с чем-то вроде этого, но мне удалось собрать что-то, что работает в режиме отладки, когда я нажимаю на него шаг за шагом, но он не работает при нормальном выполнении.
При нормальном выполнении код направляется прямо к последнему элементу условия for и не может открыть квитанцию изwebtool.
Webtool довольно сложный, и у меня нет возможности редактировать его код.Кажется, проблема в скорости выполнения кода, поэтому я попытался замедлить его с помощью некоторых команд .setTimeout.
Возможно, я тоже допустил несколько более фундаментальных ошибок из-за недостатка опытаУ меня есть.
{
function belegebearbeiten(){
for(i = 0; i < 5; i++) {
zeit = 20000 * i;
path = "belege:bTabs-199172769:sv-VoucherTabelleAusgaben199172769:j_idt1115:" + i + ":j_idt1117";
command1 = "document.getElementsByName(";
command2 = ")[0].click()";
belegnummer = command1 + "'" + path + "'" + command2;
window.setTimeout (function() {
browser.tabs.executeScript({
code: belegnummer
});
}, 0 + zeit);
window.setTimeout (function() {
browser.tabs.executeScript({
file: "/content_scripts/fahrtkosten.js"
});
}, 10000 + zeit);
window.setTimeout (function() {
browser.tabs.executeScript({
code: "document.getElementById(\"pageCreator:btnClos\").click();"
});
}, 20000 + zeit);
}
i = 0;
}
browser.browserAction.onClicked.addListener(belegebearbeiten);
}
Я хочу, чтобы код открыл квитанцию, щелкнув по ее номеру, дождавшись окончания загрузки сайта и запуска сценариев в файле fahrtkosten.js, который оставляет комментарий к новомустраница, выбирает правую раскрывающуюся опцию и сохраняет ввод.Затем я хочу закрыть квитанцию, которая перезагружается после сохранения, и повторить эти шаги со следующей квитанцией.
На самом деле я получаю, что квитанция не загружается с ошибками «TypeError: this._tabPool is null», "Удален небезопасный атрибут. Элемент: svg. Атрибут: xmlns." И "Ошибка: document.getElementById (...) имеет значение null".
Как я уже сказал: он работает в режиме отладки, контролируя меняего исполнение.