我有下面的 jQuery 选择器。我用浏览器开发者控制台的数据检查它。
jQuery("iframe#msg_body").contents().find("html body div span").text()
我需要将其用于 selenium 中的 cssSelector。 例如如下格式
By expectedOutput = By.cssSelector(The_expression_I_need);
谁能告诉我该怎么做?
最佳答案
正如 Rory McCrossan 提到的,您不能仅使用 CSS 选择器访问该元素,因为它位于 iframe 内。
您必须切换到 iframe 并搜索该元素。
new WebDriverWait(driver,30).until(ExpectedConditions.frameToBeAvailableAndSwitchToIt("msg_body"));
By expectedOutput = By.cssSelector("html body div span");
然后你可以使用定位器获取元素。
定位器将返回body标签内div标签内的所有span标签。所以我猜它很可能会获得不止一个元素。
关于java - 如何为下面的复杂 jQuery 选择器编写 cssSelector,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56041140/