Перейти к содержанию
Fire Monkey от А до Я
  • 0

[TWebBrowser] Как отловить событие выполнения JavaScript?


Alexey Lovchikov

Вопрос

Как отловить событие выполнения JavaScript, например событие console.log, чтоб инициировать выполнение delphi логики

Задача заключается в организации взаимодействия delphi кода с TWebBrowser и обратно. Необходимо при нажатии кнопки html страницы выполнять код delphi

Ссылка на комментарий

Рекомендуемые сообщения

  • 0

Присоединяюсь к вопросу  не могу понять как отловить событие выделения маркера на карте например google. Подскажите пожалуйста кто смог. ? В голову приходит создавать какой то файл в javascript и ждать его в делфи... но это как то криво....

Изменено пользователем Syb
Ссылка на комментарий
  • 0
  • Администраторы

В FireMonkey нету такой возможности. Если требуется, то, возможно, следует создавать нативный веббраузер самостоятельно и использовать его по полной. По скольку у вас будет прямой доступ к API нативного браузера.

Ссылка на комментарий
  • 0

В FireMonkey нету такой возможности. Если требуется, то, возможно, следует создавать нативный веббраузер самостоятельно и использовать его по полной. По скольку у вас будет прямой доступ к API нативного браузера.

Не писать же парсинг HTML с 0 , я читал где то что движки есть типа webkit но нигде не видел примеров... поделитесь? Возможно у  задачи определения по какому маркеру кликнули на google map есть более простое решение? 

Изменено пользователем Syb
Ссылка на комментарий
  • 0

Тоже столкнулся с проблемой получения результата js, например, получения значения переменной.

Выходит что вызвать javascript из Webbrowser можно (Webbrowser1.EvaluateJavaScript(js);), а получить значения обратно никак. 

В VCL это было возможно через IHTMLDocument2, в FMX такого нет.

Кто-нибудь пробовал использовать нативный веббраузер? 

Ссылка на комментарий
  • 0

Подниму тему. За 2 года, что нибудь поменялось? Возможно ли что нибудь из tWebBrowser'a и его JavaScript'a передать управляющей программе? Хочу в своей электронной книге (посредством вывода html через tWebBrowser) добавить возможность поставить закладки, но пока не вижу никаких вариантов взаимодействия - хотелось бы уметь отлавливать хоть что нибудь...

Ссылка на комментарий
  • 0
13 часов назад, CyberStorm сказал:

Подниму тему. За 2 года, что нибудь поменялось? Возможно ли что нибудь из tWebBrowser'a и его JavaScript'a передать управляющей программе? Хочу в своей электронной книге (посредством вывода html через tWebBrowser) добавить возможность поставить закладки, но пока не вижу никаких вариантов взаимодействия - хотелось бы уметь отлавливать хоть что нибудь...

Вот тут https://github.com/freeonterminate/delphi/tree/master/TWebBrowser  TWebBrowserEx 

Имеет интересный метод

 // ↓ can taking id of bar's attribute value.
  Value := FWebBrowser.GetTagValue('bar', 'value');

Можно в JS функции результат записать в невидимый <div id="lalala" value="результат"> и прочесть его с помощью функции.

Ссылка на комментарий

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...