Webkit GTK:确定文档何时完成加载

时间:2012-07-30 19:23:57

标签: c webkit gtk webkitgtk

StackOverflow还有其他问题关闭到我想知道的地方,比如Webkit GTK :: How to detect when a download has finished?,但我想我会问一些不同的东西:

通常,在事件驱动的C Webkit-GTK API中,有许多事件可能与某个文档何时完成“加载”的想法有关。问题是documentation非常稀疏,“完成加载”的想法不一定清楚,因为它可以引用很多东西。 “完成加载”是否意味着文档已完成下载?它已经完成了DOM树的创建?它已经完成下载,包括所有其他资源(如CSS,JS和图像文件?)

相关信号为signal::notify::load-statusdocument-load-finishedresource-load-finished

每次加载状态发生变化时,load-status信号都会触发,因此您需要手动调用webkit_web_view_get_load_status并每次检查状态。即便如此,当状态最终为WEBKIT_LOAD_FINISHED时,我不确定这意味着什么 - 这是否意味着WebKit已经下载资源,或者它已经完成了创建DOM树,或者什么?

问题:

各种“已完成”信号之间有什么区别,是否有任何信号等同于标准Javascript DOM事件window.onload

1 个答案:

答案 0 :(得分:0)

我相信document-load-finished signal正是您所寻找的,因为我认为(在我看来)更接近您要测试的内容。

测试哪种方法的正确方法是测试文档是否已手动“加载”的各种方法。即尝试我上面链接的那个,并在值为true时将字符串输出到终端。如果在页面完全显示其所有内容之前该值为true,则可能不是您所追求的那个。然后继续前进到下一个,直到你找到合适的。

除此之外,我不确定你能做什么,因为如你所说,定义不是很清楚。这些时候我希望Gtk文档更加冗长。