C#GeckoFX-从导航的页面调用JS函数
本文关键字:调用 JS 函数 导航 C#GeckoFX- | 更新日期: 2023-09-27 18:25:06
我正试图使用GeckFX(版本33)在导航页面中调用我的函数"initialize",我尝试了以下操作:
_wb.Navigate("javascript:void(initialize());");
和
using (Gecko.AutoJSContext context = new AutoJSContext(_wb.Window.JSContext))
{
var result = context.EvaluateScript("initialize();", _wb.Window.DomWindow);
}
两者都不起作用。第一个甚至没有返回错误,第二个返回以下错误消息:
对COM组件的调用返回错误HRESULT E_FAIL。
我正在"DocumentCompleted"事件处理程序中执行这些操作。我有什么东西不见了吗?
我的猜测是它没有完成加载页面,因为当我在调试模式下停止时,我在这个偶数处理程序中看不到网页(只有当我继续它出现时)
有什么办法让它发挥作用吗?谢谢
我发现了问题,我应该使用:
Application.DoEvents();
然后呼叫
_wb.Navigate("javascript:void(initialize());");