zoukankan      html  css  js  c++  java
  • C#webbrowser控件技巧(取得javascript变量值,禁止显示脚本错误)

    C#中的webbrowser控件比较好用. 下面本人搜索整理的几个小技巧.

    1. 从C#中取得javascript的变量值.

    using mshtml;
    using System.Reflection;

                IHTMLDocument2 vDocument = webBrowser1.Document.DomDocument as IHTMLDocument2;
                IHTMLWindow2 vWindow = vDocument.parentWindow;
                Type vWindowType = vWindow.GetType();
                object xpt = vWindowType.InvokeMember("_xpt", BindingFlags.GetProperty, null, vWindow, new object[] { });

    xpt 就是取得的javascript中的变量"_xpt"的值.

    2. 禁止显示脚本错误窗口.

    webBrowser1.ScriptErrorsSuppressed = true;

    3. 如何取弹出网页的网址

     string newUrl = webBrowser_temp.Document.ActiveElement.GetAttribute("href");

    4. 禁止打开新窗口, 在本窗口打开.

    4.1 设置属性.

    void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
    {   
     //将所有的链接的目标,指向本窗体   
     foreach (HtmlElement archor in this.webBrowser1.Document.Links)   
     {  
      archor.SetAttribute("target", "_self");   
     }   
     //将所有的FORM的提交目标,指向本窗体   
     foreach (HtmlElement form in this.webBrowser1.Document.Forms)
     {       
      form.SetAttribute("target", "_self");   
     }
    }
    将 WebBrowser 的 AllowWebBrowserDrop 设为 false
    将 WebBrowser 的 WebBrowserShortcutsEnabled 设为 false
    将 WebBrowser 的 IsWebBrowserContextMenuEnabled 设为 false

    这种方法对于javascript打开的链接无效.

    4.2 拦截新窗口, 在另一个webbrowser控件打开.

    private void webBrowser_1_NewWindow(object sender, CancelEventArgs e)
    {              
     WebBrowser webBrowser_temp = (WebBrowser)sender;  
     string newUrl = webBrowser_temp.Document.ActiveElement.GetAttribute("href");
     webBrowser_1.Url = new Uri(newUrl);
     e.Cancel = true; 
    }   

  • 相关阅读:
    sas中一些小的选项的含义
    C++变量学习点
    sas,log,output,ods输出管理(html output_object output_statement)
    matlab统计函数
    sas条件判断语句where,if的区别,以及where选项
    sas数组,数组的语法与一些特殊定义,获取维度大小
    sas赋值语句,累加语句,keep,drop,rename,(retain/sum statement)
    解决Xcode 4.3.2的"Could not insert new outlet connection"问题
    网络数据的XML解析
    将UIView中的图像保存到相册
  • 原文地址:https://www.cnblogs.com/danyueweb/p/3340814.html
Copyright © 2011-2022 走看看