所以我今天遇到了一个我没有经历过的新版本,它与Chrome驱动程序的性质有关(我相信Chrome是唯一一个这样做的人......)。我知道当你使用.click()单击一个元素时,它会点击中心。然而,这是令人不安的,因为我试图点击一个复选框,恰好有一个嵌套在中心的链接。
我也尝试过使用JavaScript Executor而且没有运气..有没有人知道这方面的方法?是的,我试过只是访问该框,但它没有我可以使用的标识符..
答案 0 :(得分:0)
您可以点击使用坐标
坐标co = element.getCoordinates();
答案 1 :(得分:0)
由于你没有在这里添加复选框html,我会假设它是这样的:
<input type="checkbox" id="checkbox_id">
<label for="checkbox_id">Something</label>
所以你只需要点击输入而不是标签。它看起来像这样:
driver.findElemnt(By.id("checkbox_id")).click();
或使用xPath:
driver.findElemnt(By.xpath("//input[@type='checkbox']")).click();
答案 2 :(得分:0)
可以通过两种方法解决此问题
方法1:使用默认单击查找复选框x的正确xpath
driver.findElement(By.xpath(“ CheckBoxXPath”)。click();
方法2:如果您确实要单击WebElement的中心,则您的Actions类方法单击(WebElement目标),此方法将在WebElement的中间单击。 请参阅How to use Actions class clcik method