【发布时间】:2023-03-09 08:54:01
【问题描述】:
我想在 WinForms WebBrowser 控件中使用 jQuery,但无法通过指向 url 的链接访问 jQuery(即我想在我的应用程序中嵌入 jQuery 并从那里获取它)。有没有办法做到这一点?如果是这样,它需要如何嵌入(例如作为内容文件)以及使用它的 html 是什么?
【问题讨论】:
标签: jquery webbrowser-control embed
我想在 WinForms WebBrowser 控件中使用 jQuery,但无法通过指向 url 的链接访问 jQuery(即我想在我的应用程序中嵌入 jQuery 并从那里获取它)。有没有办法做到这一点?如果是这样,它需要如何嵌入(例如作为内容文件)以及使用它的 html 是什么?
【问题讨论】:
标签: jquery webbrowser-control embed
这看起来很简单。只需抓取文件,将其加载到脚本元素中,然后将其添加到 DOM。
以下是我的处理方法:
从这里下载: https://code.jquery.com/jquery-2.2.4.min.js 或在这里 https://code.jquery.com/jquery/
使用File.ReadAllText将其加载到文件中 然后将其插入到 DOM 中。
您可以这样做:
private void WebBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
WebBrowser wb = sender as WebBrowser;
HtmlElement he = wb.Document.CreateElement("script");
string jquery = System.IO.File.ReadAllText("jquery.js");
he.InnerHtml = jquery;
wb.Document.Body.InsertAdjacentElement(HtmlElementInsertionOrientation.AfterEnd, he);
}
你也可以像这样从cdn注入它:
private void WebBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
WebBrowser wb = sender as WebBrowser;
HtmlElement he = wb.Document.CreateElement("script");
mshtml.HTMLScriptElement script = he.DomElement as mshtml.HTMLScriptElement;
script.src = "https://code.jquery.com/jquery-3.1.1.min.js";
wb.Document.Body.InsertAdjacentElement(HtmlElementInsertionOrientation.AfterEnd, he);
}
【讨论】: