gpt4 book ai didi

c# - 在运行时使用 jQuery 将 JavaScript 注入(inject) WebBrowser

转载 作者:太空宇宙 更新时间:2023-11-03 14:28:14 24 4
gpt4 key购买 nike

我有带有 WebBrowser 控件的桌面应用程序,并尝试将 JavaScript 注入(inject)加载的页面。

为此我添加了两个脚本元素:

private static void AddJQueryElement(HtmlElement head)
{
HtmlElement scriptEl = head.Document.CreateElement("script");
IHTMLScriptElement jQueryElement = (IHTMLScriptElement)scriptEl.DomElement;
jQueryElement.src = @"http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js";

head.AppendChild(scriptEl);
}

private static void AddScriptElement(HtmlElement head)
{
HtmlElement scriptEl = head.Document.CreateElement("script");
IHTMLScriptElement myScriptElement = (IHTMLScriptElement)scriptEl.DomElement;
myScriptElement.src = @"file:///c:\JScript.js";
head.AppendChild(scriptEl);
}

您首先看到的是对 jQuery 的引用,因为我在我的脚本中使用了它。当我尝试使用 _webBrowser.Document.InvokeScript 从我的脚本调用函数时,WebBrowser 抛出脚本错误:“预期对象”。并指向我尝试使用 jQuery 的行(var tags = $("Body").find("*");)。

我怎样才能避免这个错误?

另一件有趣的事情:如果我添加类似 alert("hello"); 的东西到我的函数的开始,一切正常。

最佳答案

没有得到正确答案,但是已经通过使用 jquery.min.js 的本地副本解决了问题。

关于c# - 在运行时使用 jQuery 将 JavaScript 注入(inject) WebBrowser,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3319406/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com