gpt4 book ai didi

c++ - 在 OnDocumentComplete 中获取 iFrame 宽度和高度时出错

转载 作者:太空狗 更新时间:2023-10-29 23:17:15 31 4
gpt4 key购买 nike

我有一个 IE 浏览器帮助程序对象 (BHO)(用 C++ 编写),它在收到文档完成通知 (OnDocumentComplete) 时记录 iFrame 和主页的高度和宽度。到目前为止,此代码一直运行良好(所有较旧的 Windows 和 IE 版本),但已停止在 Windows 8.1 的 IE11(桌面)中运行 iFrame。获取主页的宽度和高度仍然有效。

我正在使用 IWebBrowser2 界面中的 get_Height 和 get_Width 函数。对这些函数的调用现在返回错误 0x80004005(未指定错误)并且返回的高度和宽度为 0。

有人遇到过这个问题吗?听起来这可能是 IE11 中的一个错误。任何帮助将不胜感激。

谢谢!

最佳答案

我观察到 IE9+(包括 IE11)似乎在加载整个 DOM 之前“提前”触发 onload= type DOM 事件。特别是在我的情况下,我已经让浏览器 DOM 加载了 SVG 文档。网页有 <object>其中的标签可能是另一个危险区域。我的解决方法是捕获 onload= 事件,然后再等待 0.75 秒让 DOM 稳定下来。一个不完美的、疯狂的 hack,但它似乎有所帮助。

关于c++ - 在 OnDocumentComplete 中获取 iFrame 宽度和高度时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18965487/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com