Web浏览器控制预防您确定要离开此页吗?

本文关键字:离开 控制 浏览器 Web | 更新日期: 2023-09-27 18:03:53

我有一个用于导航到另一个页面的应用程序,一种网络浏览器,问题是对于一些网页它说"你确定要离开这个页面吗?"对话。我想把它完全去掉。它应该在没有对话框的情况下开始导航。我试过了,

WebBrowser.ScriptErrorsSuppressed = True

Screenhot: http://image.prntscr.com/image/5d1adcbd60794f22b5ad7baf736b29f2.png

我也试过禁用javascript,但没有运气。任何帮助都会很感激。

Web浏览器控制预防您确定要离开此页吗?

JavaScript的onbeforeunload事件负责处理这些消息。通过将其设置为null:

window.onbeforeunload = null;

可以阻止其处理程序代码运行

可以:

Dim doc As HtmlDocument = WebBrowser1.Document
Dim head As HtmlElement = doc.GetElementsByTagName("head")(0)
Dim s As HtmlElement = doc.CreateElement("script")
s.SetAttribute("text", "function cancelOut() { window.onbeforeunload = null; }")
head.AppendChild(s)
WebBrowser1.Document.InvokeScript("cancelOut")

你需要使用不安全的本地方法来拦截新的窗口事件