将 JavaScript 注入 Web 浏览器控件
问题:
我正在尝试注入JavaScript 脚本插入 WebBrowser 控件,但在设置脚本的 InnerHtml 属性时遇到错误 元素。有没有替代方法来实现这一点?
答案:
虽然原始尝试失败成功,但可以使用以下方法将脚本注入DOM:
HtmlElement head = webBrowser1.Document.GetElementsByTagName("head")[0]; HtmlElement scriptEl = webBrowser1.Document.CreateElement("script"); IHTMLScriptElement element = (IHTMLScriptElement)scriptEl.DomElement; element.text = "function sayHello() { alert('hello') }"; head.AppendChild(scriptEl); webBrowser1.Document.InvokeScript("sayHello");
说明:
获取 IHTMLScriptElement 接口:
设置脚本文本:
调用脚本:
以上是如何在不使用 InnerHtml 的情况下将 JavaScript 注入 Web 浏览器控件?的详细内容。更多信息请关注PHP中文网其他相关文章!