硒,Js隐藏的Xpath
Selenium, Xpath hidden by Js
我对网站上的js元素有问题。Selenium看不到我的xpath,因为我认为这个元素隐藏在Js 后面
我用过wait.until(ExpectedConditions.elementToBeClickable。。。。当我想检查这个元素时,我不能。我看到js。在地图上。当然,我已经通过(Firebug,firepath)找到了这个元素,但Selenium看不到,也无法点击
driver.findElement(By.xpath(".//*[@id='gmap']/div/div[1]/div[3]/div[3]/div[6]"));
wait.until(ExpectedConditions.elementToBeClickable(By.xpath(".//*[@id='gmap']/div/div[1]/div[3]/div[3]/div[4]")));
driver.findElement(By.xpath(".//*[@id='gmap']/div/div[1]/div[3]/div[3]/div[4]")).click();
wait.until(ExpectedConditions.elementToBeClickable(By.xpath(".//*[@id='gmap']/div/div[1]/div[3]/div[3]/div[16]")));
driver.findElement(By.xpath(".//*[@id='gmap']/div/div[1]/div[3]/div[3]/div[16]")).click();
硒看不见这种元素。
wait.until(ExpectedConditions.elementToBeClickable(By.xpath(".//*[@id='gmap']/div/div[1]/div[2]")));
driver.findElement(By.xpath(".//*[@id='gmap']/div/div[1]/div[2]")).click();
您有各种各样的可能性。
1) 也许您的元素的opacity
属性设置为0,所以您可以通过jQuery将其设置为1并使其可见:
WebDriver driver = new YOUR_DRIVER();
if (driver instanceof JavascriptExecutor) {
((JavascriptExecutor)driver).executeScript("$('YOUR_ELEMENT').css('opacity','1');");
}
2) 当你必须点击你的元素时,你可以将他的z-index
值更改为页面中"最可见的":
WebDriver driver = new YOUR_DRIVER();
if (driver instanceof JavascriptExecutor) {
((JavascriptExecutor)driver).executeScript("$('YOUR_ELEMENT').css('z-index','100');");
}
3) 你可以隐藏你的JS。
相关文章:
- 在单击任何位置时隐藏元素,而不检查每次DOM单击
- 显示5秒后隐藏潜水
- 在不使用JQuery的情况下隐藏DOM中的选定元素
- 剑道UI内联编辑:如何在点击其他按钮时隐藏按钮
- 浮动页脚栏-使用Bootstrap隐藏
- 在jquery中为显示/隐藏设置cookie
- 单击按钮后如何逐个调用分区,上一个分区将隐藏
- 从var向代码隐藏函数传递值
- Image赢得't隐藏在滚动jQuery上
- 具有rowGrouping的数据表无法隐藏列
- Jquery隐藏未触发
- JavaScript 检查隐藏字段中的值并将其设置为隐藏字段值
- 分部隐藏在jquery中不起作用
- 点击后隐藏潜水?(但如果Div是一面旗帜呢?)
- javascript.点击隐藏事件故障
- 禁用(而不是隐藏)浏览器滚动条
- 使用 Selenium 单击由 Content(内容)隐藏的链接替换为 Selenium XPath
- 如何使用Greasemonkey来隐藏XPath元素
- 硒,Js隐藏的Xpath
- Selenium使用Xpath读取隐藏web元素的文本