1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > C# WebBrowser 取 window.open 新窗口 url的方法

C# WebBrowser 取 window.open 新窗口 url的方法

时间:2019-06-04 14:17:35

相关推荐

C# WebBrowser 取 window.open 新窗口 url的方法

System.Windows.Forms.WebBrowser wb; //WebBrowser 对象wb.NewWindow += new CancelEventHandler(wb_NewWindow);wb.DocumentCompleted += delegate{#region 处理window.open新开窗口的问题System.Windows.Forms.HtmlElement html = wb.Document.CreateElement("div");html.InnerHtml += "<a id=\"popLink\" href=\"\" target=\"_blank\" style=\"display:none;\"></a>";wb.Document.Body.AppendChild(html);string jsHtml = "";jsHtml += "window.open=function(url, title, prop) ";jsHtml += "{";jsHtml += "obj = document.getElementById('popLink'); ";jsHtml += "obj.style.display='block'; ";jsHtml += "obj.href=url; ";jsHtml += "obj.focus(); ";jsHtml += "obj.click(); ";jsHtml += "obj.style.display='none' ";jsHtml += "} ";mshtml.IHTMLDocument2 doc = wb.Document.DomDocument as mshtml.IHTMLDocument2;mshtml.IHTMLWindow2 win = doc.parentWindow as mshtml.IHTMLWindow2;win.execScript(jsHtml, "javascript");#endregion};static void wb_NewWindow(object sender, CancelEventArgs e){System.Windows.Forms.WebBrowser web = (System.Windows.Forms.WebBrowser)sender;string newUrl = web.StatusText.ToString();showNewWinWithUrlInner(null, newUrl, "", 800, 600, true, false);//自己取到新窗口url后自行处理e.Cancel = true;}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。