用webBrowser打开网页出现脚本错误怎么办

当IE浏览器遇到脚本错误时,在浏览器左下角会出现一个黄色图标,点击可以查看脚本错误的详细信息,并不会有弹出的错误信息框。我们在用webBrowser编写的程序打开网页,遇到脚本有问题是,会弹出一个错误

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

当IE浏览器遇到脚本错误时,在浏览器左下角会出现一个黄色图标,点击可以查看脚本错误的详细信息,并不会有弹出的错误信息框。我们在用webBrowser编写的程序打开网页,遇到脚本有问题是,会弹出一个错误提示框,需要确认后才能够进行执行。如果我们设计的程序是用来自动处理网页的,那么在出现这种情况时,程序运行被打断,需要人工干预。这显然无法达到我们的要求。

      那么,在使用webBrowser打开网页遇到脚本错误时如何处理才能让程序无干扰的自动运行呢?

      webBrowser给我们提供了一个属性:ScriptErrorsSuppressed 。当不想再遇到脚本错误时弹出错误提示框,可以将该值设为TRUE。

      webBrowser1.ScriptErrorsSuppressed = true;

 

      ScriptErrorsSuppressed 属性的具体的用法如下:

      将此属性设置为 false 可调试显示在 WebBrowser 控件中的网页。如果要使用该控件向应用程序添加基于 Web 的控件和脚本代码,则此属性十分有用。如果将该控件用作泛型浏览器,则此属性用处不大。完成应用程序的调试后,将此属性设置为 true 以取消显示脚本错误。http://hovertree.com/h/bjaf/scjyuanma.htm

      注意:当 ScriptErrorsSuppressed 设置为 true 时,WebBrowser 控件将隐藏其源自基础 ActiveX 控件的所有对话框,而不仅仅是脚本错误。有时,在显示某些对话框(例如,用于浏览器安全设置和用户登录的对话框)时,可能需要取消显示脚本错误。在这种情况下,应将 ScriptErrorsSuppressed 设置为 false,并在 HtmlWindow.Error 事件的处理程序中取消显示脚本错误。

 

      这种做法的负作用如上面红字描述的,如果只想屏蔽脚本错误,可以用以下方法:

      下面的代码演示如何在不取消显示其他对话框的情况下取消显示脚本错误。在此示例中,将 ScriptErrorsSuppressed 属性设置为 false 以确保显示对话框。HtmlWindow.Error 事件的处理程序取消显示该错误。只有在文档已完成加载时才能访问此事件,因此该处理程序被附加到 DocumentCompleted 事件处理程序中。

// 仅隐藏脚本错误,其他错误照样提示   

private void SuppressScriptErrorsOnly(WebBrowser browser)    
{    
    // 确信 ScriptErrorsSuppressed 设为 false.    
    browser.ScriptErrorsSuppressed = false;    

    // 处理 DocumentCompleted 事件以访问 Document 对象.    
    browser.DocumentCompleted +=    
        new WebBrowserDocumentCompletedEventHandler(    
            browser_DocumentCompleted);    
}    

private void browser_DocumentCompleted(object sender,    
    WebBrowserDocumentCompletedEventArgs e)    
{    
    ((WebBrowser)sender).Document.Window.Error +=    
        new HtmlElementErrorEventHandler(Window_Error);    
}    

private void Window_Error(object sender,    
    HtmlElementErrorEventArgs e)    
{    
    // 忽略该错误并抑制错误对话框    
    e.Handled = true;    
}/* 何问起 hovertree.com */

推荐:http://www.cnblogs.com/roucheng/p/3521864.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/120352.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • vue路由懒加载的实现方式_vue-router路由模式

    vue路由懒加载的实现方式_vue-router路由模式本文已参与「新人创作礼」活动,一起开启掘金创作之路1.路由懒加载如何实现当打包构建应用时,JavaScript包会变得非常大,影响页面加载。如果我们能把不同路由对应的组件分割成不同的代码块,然后当路由被访问的时候才加载对应组件,这样就会更加高效当前,我们使用如下方式导入组件importLoginfrom’../views/Login打包后,这些组件都会被打包到一个.s文件中,css代码会打包到css文件中访问应用时,就会下载这js文件和对应的css文件随着代码的增多,文件

    2022年10月7日
    0
  • Python——ZipFile操作压缩文件[通俗易懂]

    Python——ZipFile操作压缩文件[通俗易懂]python3中zipfile模块用法zipfile是python里用来做zip格式编码的压缩和解压缩的,由于是很常见的zip格式,所以这个模块使用频率也是比较高的,在这里对zipfile的使用方法做一些记录。即方便自己也方便别人。zipfile里有两个非常常用的class,分别是ZipFile和ZipInfo,在绝大多数的情况下,我们只需要使用这两个class就可以了。…

    2022年9月17日
    0
  • 动感地带亲情省

    动感地带亲情省注:本文转自网络为进一步满足客户国内长途及国内漫游通话需求,中国移动北京公司将于近期推出长漫亲情省业务,现就相关事宜通知如下:  一、推出时间  2009年4月18日0时  二、目标客户动感地带、

    2022年7月3日
    29
  • 好看又有趣的404页面设计[通俗易懂]

    好看又有趣的404页面设计[通俗易懂]404页面作为提示错误的媒介,起着承上启下的作品,既要保证用户在看到错误页面的同时不会直接退出,又要给用户提供新的操作选择,两者兼顾才会有更好的用户体验。现在更多设计师愿意到可以到乐于分享学习经验的集设网www.ijishe.com,优秀的成功案例,可以开拓设计师的思路,值得在下一个项目中积攒经验!404页面这样设计好看又有趣-集设设计没思路,那么就需要从这几个方面着手:1、了解产品的背景,产品未来发展方向。2、去搜UI

    2022年7月27日
    2
  • FastJson对BigDecimal保留两位小数(valueFilter)「建议收藏」

    FastJson对BigDecimal保留两位小数(valueFilter)「建议收藏」2019独角兽企业重金招聘Python工程师标准>>>…

    2022年9月23日
    0
  • python把数字转换成字符串(字符串是什么)

    数字转为字符串这个相对比较简单我们可以使用Python中的str函数直接转换例如将123转换为’123’print(str(123))或者使用格式化print(‘%s’%123)字符串转为数字这个相对比较复杂一点因为Python没有提供类似于str函数的int函数如果转换的是0-9的一个数,那么只采用字典就可实现defchar2num(s):…

    2022年4月12日
    55

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号