zoukankan      html  css  js  c++  java
  • 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;
            }
    

      

  • 相关阅读:
    python的多进程
    sqlalchemy的缓存和刷新
    uuid
    区块链的理解
    列表推导式,两个for循环的例子
    Fiddler 抓包工具总结
    python---webbrowser模块的使用,用非系统默认浏览器打开
    使用jmeter做web接口测试
    selenium2中关于Python的常用函数
    Selenium2+Python自动化学习笔记(第1天)
  • 原文地址:https://www.cnblogs.com/soundcode/p/13689607.html
Copyright © 2011-2022 走看看