在 HTML 上执行 Javascript 就绪
Executing Javascript on HTML ready
我基本上是在创建一个需要根据 CefSharp 浏览的页面执行 Javascript 代码的软件。
问题是我需要尽快执行此代码,但我找不到使用 CefSharp 执行此操作的方法。
理想情况是在 HTML 准备就绪后执行 Javascript 代码,而不是在选项卡完成加载时执行,这是浪费时间。
Here is a little scheme to make you better understand.
我已经尝试了两件事:
ExecuteScriptAsync()
:但这执行得太早了,因为 HTML 还没有加载,所以它 returns 错误说元素我的 JS要使用的脚本未定义。
ExecuteScriptAsyncWhenPageLoaded
:不言自明,JS 在页面完全加载后执行。
这一切的目的是尽可能节省执行时间。
我终于找到了一个解决方案,其中包括在使用 ExecuteScriptAsync()
浏览页面后执行脚本,然后检测 DOM 何时准备好触发脚本。
我首先使用 jQuery 尝试了此操作 ($( document ).ready(function() { ... });
),但是在执行 Javascript 文件时甚至还没有包含该库。
所以工作方式是使用纯 Javascript 而不是 jQuery 和 window.addEventListener('DOMContentLoaded', function(){ /*Main script here*/ });
。
我基本上是在创建一个需要根据 CefSharp 浏览的页面执行 Javascript 代码的软件。 问题是我需要尽快执行此代码,但我找不到使用 CefSharp 执行此操作的方法。
理想情况是在 HTML 准备就绪后执行 Javascript 代码,而不是在选项卡完成加载时执行,这是浪费时间。 Here is a little scheme to make you better understand.
我已经尝试了两件事:
ExecuteScriptAsync()
:但这执行得太早了,因为 HTML 还没有加载,所以它 returns 错误说元素我的 JS要使用的脚本未定义。ExecuteScriptAsyncWhenPageLoaded
:不言自明,JS 在页面完全加载后执行。
这一切的目的是尽可能节省执行时间。
我终于找到了一个解决方案,其中包括在使用 ExecuteScriptAsync()
浏览页面后执行脚本,然后检测 DOM 何时准备好触发脚本。
我首先使用 jQuery 尝试了此操作 ($( document ).ready(function() { ... });
),但是在执行 Javascript 文件时甚至还没有包含该库。
所以工作方式是使用纯 Javascript 而不是 jQuery 和 window.addEventListener('DOMContentLoaded', function(){ /*Main script here*/ });
。