找回密码
 加入
搜索
查看: 5149|回复: 11

[IE类操作] 請教資深人士,IELoadWait通過什麽判斷網頁加載完成? [未解决]

 火.. [复制链接]
发表于 2011-9-3 17:26:50 | 显示全部楼层 |阅读模式
本帖最后由 jack2684 于 2011-9-22 08:34 编辑

他的第一的參數是一個對象,那麼意思是他可以判斷網頁某一小塊區域加載完成是嗎?

更重要的問題是,如果一個網頁是用jsp寫的,那麼點擊一些局部刷新他能知道嗎?

(抱歉那個源文件看得有點暈所以就很無恥地直接來問人啦~~)
发表于 2011-9-3 19:37:32 | 显示全部楼层
网页吗,肯定只有一个</html>啊
发表于 2011-9-3 23:47:49 | 显示全部楼层
应该是根据状态栏进度条
 楼主| 发表于 2011-9-12 22:46:35 | 显示全部楼层
回复 2# unique009


    网页如果用了frame的话就不会只有一个html了....
发表于 2011-9-13 15:50:20 | 显示全部楼层
应该是通过事件或消息吧
发表于 2011-9-13 18:14:53 | 显示全部楼层
瞎指条路,端口没流量了就是完了,或者是没有接收数据了(不管是完整不完整),传递过程结束
发表于 2011-9-16 23:54:54 | 显示全部楼层
搞不懂,顶一下
发表于 2011-9-23 01:16:53 | 显示全部楼层
我也搞不懂,期待高手分析一下原理
发表于 2011-9-23 02:57:02 | 显示全部楼层
本帖最后由 happytc 于 2011-9-23 02:59 编辑

回复 1# jack2684

①若第一参数是浏览器对象,则不停地调用WebBrowser的ReadyState 属性,若Object.readyState == 4或String(o_object.readyState) == "complete",则表示加载完成了。

②若第一参数是Window/Frame等对象(也就是你所谓的‘網頁某一小塊區域’),则可以不停地调用浏览器的文档属性:document.readyState,若object.document.readyState == 4 或String(object.document.readyState) == "complete"则表示该Window/Frame加载完毕。
若第一参数是DOM对象,也就是object.document.parentWindow,也是调用文档属性来判断

当然你要进一步问ActiveX控件或IE浏览器又是如何知道呢,那就是要了解TCP/IP协议的原理了,其核心简单说起来也就是三次握手成功后建立了一个连接,于是服务器和客户端开始互传数据。最后服务器会在报文里告诉客户端什么时候数据传完了,客户端会告诉服务器我收到了那些数据。当数据传完了,ActiveX控件或IE就把readyState/document.readyState设为4,表示完成了。
发表于 2011-9-24 10:21:06 | 显示全部楼层
回复  jack2684

①若第一参数是浏览器对象,则不停地调用WebBrowser的ReadyState 属性,若Object.ready ...
happytc 发表于 2011-9-23 02:57



    赞!
发表于 2011-10-13 20:44:52 | 显示全部楼层
回复 1# jack2684


难道不知道看一下ie.au3的源码吗。。
发表于 2011-10-17 18:16:19 | 显示全部楼层
楼上的回答给力!
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-6-1 11:30 , Processed in 0.098166 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表