我有一个IE浏览器帮助程序对象(BHO)(用C ++编写),它在收到文档完成通知(OnDocumentComplete)时记录iFrame和主页面的高度和宽度。此代码一直运行良好(所有较旧的Windows和IE版本),但已停止在Windows 8.1 for iFrames的IE11(桌面)中工作。获取主页面的宽度和高度仍然有效。
我正在使用IWebBrowser2接口中的get_Height和get_Width函数。对这些函数的调用现在返回错误0x80004005(未指定的错误),返回的高度和宽度为0.
有没有人遇到过这个问题?听起来这可能是IE11中的一个错误。任何帮助将不胜感激。
谢谢!
答案 0 :(得分:0)
我观察到IE9 +(包括IE11)似乎触发了onload = type DOM事件&#34;早期,&#34;在加载整个DOM之前。特别是在我的情况下,我的浏览器DOM加载了SVG文档。其中包含<object>
个标签的网页可能是另一个风险区域。我的工作是捕获onload =事件,然后等待0.75秒让DOM稳定下来。一个不完美,疯狂的黑客,但它似乎有所帮助。