毫无疑问,这是一个关于网页的更普遍的问题,但通过 Google 内容很容易证明这一点。
在 Google 主页上输入某些搜索条件时,结果不会触发webViewDidFinishLoad方法。当彩色 Google 徽标被链接到功能页面的某些艺术品替换时,也会出现同样的问题。
我怀疑由于某些 javascript 或 ajax 代码而导致页面未完全加载,那么有没有办法检测到这一点?
这是因为 Google 使用 AJAX 来执行此操作,当有效地将新资源加载到 Web 视图中时,将调用 webViewDidFinishLoad 委托方法 - 相当于浏览器中的页面加载,因为 Google 使用 AJAX 处理这些内容,因此不会导致该方法被触发。
没有任何方法可以检测页面的某些部分何时加载(javascript、样式表或 ajax 响应)。
您可以做的一件事是在 Web 视图上执行一行 JavaScript,告诉您页面的高度,通过等到页面高度发生变化,您可以知道结果何时发生,您将不得不设计其他一些 - 当然,当修改搜索查询时,更智能的检查,但我的想法适用于初始谷歌徽标屏幕到第一个结果页面。
每隔几秒执行一次 JS 就足够了。
希望有帮助
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)