Lobo Cobra HtmlPanel не обновляет GUI после действия JavaScript

ПРИВЕТ,

Я начал реализовывать HTML-браузер в Swing. Я хочу использовать инструментарий Lobo Cobra, потому что этот инструментарий включает в себя средство визуализации и синтаксический анализатор для CSS и JavaScript. Страницы выглядят очень красиво и просты в использовании (одна реализация класса для отображения HTML-страницы).

Я хочу показать HTML-страницы в разгаре, которые могут отображать сгенерированные и измененные объекты JavaScript, как мигающий круг. Насколько я знаю, инструментарий кобры может показывать статические команды javascript, такие как "document.write" или closwWindow (), но не обновлять GUI из JavaScript.

Кто-нибудь раньше работал с Lobo Cobra Toolkit и дал мне пример кода или советы по отображению HTML-страниц с анимированными объектами JavaScript внутри.

1 ответ

Решение

У меня сложилось впечатление, что, пока вы настраиваете себя для уведомлений, ваш код будет вызываться для всех изменений в DOM, будь то при загрузке страницы или динамически с помощью Javascript после загрузки страницы.

Сначала я настроил бы объект (X), реализующий интерфейс DocumentNotificationListener, и регистрировал бы сообщение для каждого вызванного метода. Затем установите его в качестве прослушивателя с помощью Y.addDocumentNotificationListener(X) [где Y - ваш объект HTMLDocumentImpl] и загрузите страницу, чтобы увидеть, какие методы на самом деле вызваны.

В худшем случае вам придется повторно отображать HTML-страницу при каждом вызове метода, но вы сможете оптимизировать большинство из них. Например, изменение цвета узла (объекта DOM), что приводит к вызову X.lookInvalidated(...), не потребует повторного рендеринга всей страницы, поскольку размер узла не изменяется.

Другие вопросы по тегам