在这里,我想知道网页是否有AJAX调用。因为如果网页是基于AJAX的,那么我将等待几秒钟来获取网页内容,否则如果网页不是基于AJAX,那么我不会等待。
我按照下面的代码,但我没有得到任何结果。
WebDriver driver = new PhantomJSDriver(caps);
driver.get("http://www.airgas.com/category/Safety-Products-Clothing-WorkClothing-Acc/_/N-0Z84v");
JavascriptExecutor js = (JavascriptExecutor)driver;
js.executeScript("$(document).ready(function() {
$(document).ajaxStart(function(event, request, settings) {
alert("Web Page have Ajax Calls");
});
});
);
如果我在开发人员控制台中使用javascriptexecutor
中使用的jQuery代码,我会收到警告消息,指出网页是否有AJAX调用。
我的方法是正确的吗?如果不是我的问题的正确解决方案。
答案 0 :(得分:0)
看起来你正在寻找这个答案: How do I know if jQuery has an Ajax request pending?
有了扭曲,您需要先给它一些时间来执行并启动请求,然后检查是否有任何活动。 如果有任何活动,您可以等到完成。
HTH