jquery - FireFoxDriver 找不到使用 Jquery 选择器的元素
问题描述
当我运行chrome 驱动程序时一切正常,但 firefox 总是抛出
org.openqa.selenium.NoSuchElementException:无法使用 By.jQuery 定位元素:“$( [data-auto-sub-section-title='Onset']:eq(0) .vmr-select-control)”
调用 FF 驱动程序:
public WebDriver getStandaloneFF() {
FirefoxDriverManager.getInstance(FirefoxDriver.class).setup();
WebDriver driver = new FirefoxDriver();
driver.manage().window().setSize(new Dimension(1920, 1080));
return driver;
}
Firefox 驱动程序+jquery 选择器是否存在任何已知问题?
解决方案
问题出在
@Override
public List<WebElement> findElements(SearchContext context) {
WebDriver driver = getWebDriverFromSearchContext(context);
if (!isJQueryInThisPage(driver)) {
try {
injectJQuery(driver);
} catch (IOException e) {
e.printStackTrace();
}
}
return new ByJavaScript("return $(\"" + query + "\")").findElements(context);
}
我变了
return new ByJavaScript("return $(\"" + query + "\")").findElements(context);
至
return new ByJavaScript("return $(\"" + query + "\")toArray()").findElements(context);
问题解决了
推荐阅读
- solr - 如何忽略来自 solr 的刻面中的标记
- reactjs - 在 React 组件中动态导入图像
- javascript - javascript 在本地服务器上工作,但在实时服务器 2 上不工作
- java - hashMap 的 put 方法覆盖已存储数据的值
- arrays - Laravel 从集合或数组中获取所有值
- android - 颤动我应该在Android上的哪里放置firestore时间戳设置
- javascript - 反应导航添加选项卡标题
- android - 安装了基本身份验证和 SSL 的 Woocommerce REST API 没有响应
- java - 使用 vlcj (Java) 验证字幕文件
- python - 按熊猫数据框和条件分组