Twebbrowser 中有没有获取客户端矩形的函数?
我不确定我是否可以清楚地解释这一点。
我有一些简单的 HTML 代码,并将其加载到 Twebbrowser。然后,我想获取 HTML 输出的矩形,以便我可以正确调整 Twebbrowser 的高度。
它类似于自动调整大小功能,但它只是自动调整大小的高度。 这可能吗?
提前谢谢...
I'm not sure if I can explain this clearly.
I have some simple HTML code and am loading it to the Twebbrowser. Then, I want to get the Rect of my HTML output so that i could proper re-size the height of my Twebbrowser.
It's like auto-size feature, but it's only the height that auto-size.
is that possible?
thanx in advance...
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可以使用 document.body.scrollWidth 和scrollHeight 计算出 TWebBrowser 的文档完成事件中的页面高度
You can work out the page height inside TWebBrowser's document complete event, using document.body.scrollWidth and scrollHeight
这段代码应该可以帮助您入门:
我从 HTML 元素和 BODY 元素中读取尺寸并取最大值,因为它们通常具有不同的尺寸。更常见的是,其中之一返回大小 0x0。此行为也会随着浏览器版本的不同而变化。这是一种解决方法,您必须检查这是否是在您的用例中处理它的正确方法。
注意:@Darkerstar 发布的图像是用于获取元素尺寸的旧 MSDN 插图。更新版本(适用于 IE9)似乎是这个: 在 Internet Explorer 9 中使用 CSSOM 测量元素尺寸和位置。
This code should get you started:
I read the dimensions both from the HTML element and the BODY element and take the maximum because often they have different dimensions. And even more often one of them returns size 0x0. This behavior also changes from browser version to browser version. It's a workaround, you have to check if this is the right way to deal with it in your use case.
Note: the image @Darkerstar posted was the old MSDN illustration for getting element dimensions. The updated version (for IE9) seems to be this one: Measuring Element Dimension and Location with CSSOM in Internet Explorer 9.