Вызов функции в файле Javascript из сценария tampermonkey - PullRequest
0 голосов
/ 28 июня 2018

Я пытаюсь написать скрипт tampermonkey и хочу вызвать функцию javascript, предоставляемую веб-страницей. HTML-код страницы выглядит следующим образом:

<ui-button class="action-button-spacing" id="downloadAs" variant="normal" text="Download as" click="openDownloadAsPanel()" data-disabled="actionButtonsDisabled()" initialized="true"><button class="ui-button ui-button-size-normal ui-button-variant-normal ui-hover-child-icons" type="submit"><span region-container="text">Download as</span></button></ui-button>

Мой скрипт создает кнопку на странице, и я хочу, чтобы он вызывал метод openDownloadAsPanel, определение которого находится в файле JS (не является частью файла HTML).

Для этого я попробовал это:

function addFunction(func, exec) {
    var script = document.createElement("script");
    script.textContent = "-" + func + (exec ? "()" : "");
    document.body.appendChild(script);
    document.body.removeChild(script); // clean up
}

function myFunction () {
    return openDownloadAsPanel();
}

А затем по нажатию кнопки, созданной мной, добавить функцию (myFunction, true); Я получаю сообщение об ошибке: openDownloadAsPanel не определено

Также я не знаю файл файла javascript, так как он обслуживается облачным фронтом, и имя постоянно меняется, если файл меняется. Или, возможно, мне придется проанализировать все имя / путь файла javascript, записанные в файле HTML.

...