Выполнение Javascript на HTML готово - PullRequest
0 голосов
/ 05 октября 2019

Я в основном создаю программное обеспечение, которое должно выполнять код Javascript в зависимости от того, какую страницу просматривает CefSharp. Проблема в том, что мне нужно выполнить этот код как можно быстрее, но я не могу найти способ сделать это с помощью CefSharp.

Идеальным было бы выполнить код Javascript, как только HTML будет готов, ноне когда вкладка закончила загружаться, это пустая трата времени. Вот небольшая схема, которая поможет вам лучше понять.

Я уже попробовал две вещи:

  • ExecuteScriptAsync(): Но это выполняется способомслишком рано, потому что HTML еще не загружен, поэтому он возвращает ошибки, говорящие о том, что элемент, с которым мой JS-скрипт хочет работать, не определен.

  • ExecuteScriptAsyncWhenPageLoaded: не требует поясненийJS выполняется, когда страница полностью загружена.

Цель всего этого - сэкономить как можно больше времени выполнения.

1 Ответ

0 голосов
/ 07 октября 2019

Я наконец-то нашел решение, которое состоит в том, чтобы выполнить скрипт после просмотра страницы с помощью ExecuteScriptAsync(), а затем определить, когда DOM готов запустить скрипт.

Сначала я попробовал это с помощью jQuery ($( document ).ready(function() { ... });), но библиотека даже не была включена, когда исполнялся файл Javascript.

Таким образом, рабочий способ заключался в использовании чистого Javascript вместо jQuery с window.addEventListener('DOMContentLoaded', function(){ /*Main script here*/ });.

...