Я пишу расширение Safari, которое добавляет некоторые функции к веб-странице, которой я не владею. Я хотел бы, чтобы моя вставленная страница JavaScript могла запускать некоторые функции JavaScript, которые использует хост-страница, но это не работает. На консоли я получаю сообщение ReferenceError: Can't find variable: function_name
.
Мой сценарий указан как конечный сценарий, поэтому должна быть загружена вся страница. Функция также вызывается из обработчика onclick()
на странице, например:
onclick="function_name($(this).up());"
Я могу получить ссылку на этот элемент страницы, но когда я звоню element.onclick()
, я получаю еще одну ошибку: TypeError: 'undefined' is not a function (evaluating '$(this).up()')
.
Как ни странно, когда я вызываю функцию JavaScript из AppleScript (do JavaScript "function_name()" in page
), она работает нормально. Как я могу вызвать эти функции?