精易论坛

标题: 关于判断网页加载已就绪的case [打印本页]

作者: 刚性兑付    时间: 2023-8-13 18:32
标题: 关于判断网页加载已就绪的case
支持自带的就绪判断和智能就绪判断,真的很醉~

很多时候网页还没彻底加载完呢就返回真的,要我怎样?

后面看到谷歌网络事件事件里面有个:“网络_请求已加载完成”,就想着,判断所有网络请求已经加载完成后,网页即为就绪【不知道思路有没有问题,但是已经实现我想要的效果了,有问题的话欢迎批评指正】,具体代码如下:

  
子程序名返回值类型公开备 注
网络加载就绪判断 使用再执行网络请求之前
参数名类 型参考可空数组备 注
间隔时间整数型持续多长时间没有新增网络请求,即表示已经加载完成
变量名类 型静态数组备 注
局_页面谷歌页面 
局_完成次数整数型 
局_无增开始整数型 
局_无增间隔整数型 
网络监听 ()
局_无增开始 = 时间_取现行时间戳1 ()
循环判断首 ()
如果 (局_完成次数 ≠ 网络请求完成计数)
局_完成次数 = 网络请求完成计数
局_无增开始 = 时间_取现行时间戳1 ()
局_无增间隔 = 时间_取现行时间戳1 () - 局_无增开始

如果真 (局_无增间隔 > 间隔时间)
调试输出 (“网络加载已就绪,本次共完成”到文本 (网络请求完成计数)“次网络请求”)
网络请求完成计数 = 0
程序_延时 (100, )
循环判断尾 (局_无增间隔 < 间隔时间)
' 网络监听 ()
子程序名返回值类型公开备 注
谷歌事件回调整数型 
参数名类 型参考可空数组备 注
页面ID整数型
事件类型整数型
附加参数1整数型
附加参数2整数型
如果真 (事件类型 = 259)
EnterCriticalSection (许可证)  ' 因为事件是多线程触发, 不是线程安全, 所以需要处理一下
网络请求完成计数 = 网络请求完成计数 + 1
LeaveCriticalSection (许可证)
返回 (0)
子程序名返回值类型公开备 注
网络监听  
参数名类 型参考可空数组备 注
是否开启逻辑型
变量名类 型静态数组备 注
局_事件谷歌开关事件 
局_事件 = #谷歌开关事件 .网络
如果 (是否开启)
页面.事件_启用 (局_事件)
页面.事件_关闭 (局_事件)
返回 ()


i支持库列表   支持库注释   
ietb精易vip支持库
spec特殊功能支持库


作者: 刚性兑付    时间: 2023-8-13 18:34
另外发现一个挺无语的BUG,取页面() 如果返回谷歌页面类型的数据,程序就会异常终止!
作者: 钢铁璐lu    时间: 2023-8-13 19:29
还在用支持库啊 哥
作者: 刚性兑付    时间: 2023-8-13 22:08
钢铁璐lu 发表于 2023-8-13 19:29
还在用支持库啊 哥

那用啥啊  我需要执行谷歌的命令 打印PDF 其他填表模块都没找到这个
作者: 枪响抬人    时间: 2024-12-15 14:59
行政村在
作者: ufo8877    时间: 2025-1-11 15:08
看看 怎么个回事




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4