我正在使用WebBrowser控件和mshtml.dll。当我模拟点击链接<a href='..'>..</a>
时,WebBrowser会显示一个JavaScript警告对话框:
无法将焦点移动到元素中,因为它处于不可见状态,关闭或无法聚焦。
我用来模拟点击的代码:
anchor.click();
...其中anchor
的类型为:HTMLAnchorElementClass
所以我想禁用组件WebBrowser中的所有JavaScript警告。我怎么能这样做?
答案 0 :(得分:2)
我不确定您是否引用了Windows WebBrowser控件,但它具有ScriptErrorsSuppressed属性来禁用脚本错误消息。
答案 1 :(得分:0)
您必须找到您正在执行的地方anchor.click();
,然后将其删除或将其替换为if(anchor.clientHeight != 0){anchor.click();}
。
答案 2 :(得分:0)
通过将link元素作为页面的一部分并可见,可以解决此特定警告。
调用click()
方法实际上不仅仅是执行onclick处理程序并导航浏览器,它还会关注元素 - 就像真正的点击发生时一样。如果元素在屏幕外,则无法执行此操作。
只需将链接附加到正文即可显示此警告。