我正在使用HTML和Javascript编写网页 . 此页面在WPF WebBrowser控件中打开 . 问题是这个页面上的JavaScript直接在Internet Explorer中正常工作,但在WebBrowser控件中没有,即使我已经设置为使用Internet Explorer 11进行WebBrowser控件 .
所以我无法在通常的浏览器中重现问题来调试它 . 它只能在WebBrowser控件中重现 .
是否有可能在WebBrowser中调试JavaScript代码以便能够找到问题?我在WebBrowser的上下文菜单中看不到任何带有“Inspect”字样的项目 .
1 回答
您的问题可能是由于使用旧版IE的
WebBrowser
控件而不是在Windows中独立运行 .是的,您可以调试您的网页 . JavaScript有一个名为
window.onerror
的事件,其作用类似于全局try / catch . 这非常适合捕获意外的异常 .将其添加到JavaScript中以添加自己的事件处理程序:
事件处理程序将调用WPF应用程序中的方法以向您显示错误详细信息 .
在您的WPF应用程序中创建一个类,您的JavaScript将能够访问该类 .
然后将WebBrowser控件的
ObjectForScripting
属性设置为处理程序类的实例: