无法点击 Chrome 和 IE11 上的自定义复选框
Can't click on customised checkbox on Chrome and IE11
我必须点击自定义复选框,它位于 div 内,如下代码所示:
<div class="checkbox input-group">
<input id="checkboxH" class="checkboxClass" type="checkbox" name="checkboxH">
<label class="required ng-scope" for="checkboxH">
Text of checkbox
</label>
</div>
我使用标签作为要点击的元素,它在 FF 上工作,如下代码
webDriver.findElement(By.xpath("//label[@for='checkboxH']")).click();
但它不适用于 Chrome(最新版本)和 IE11,错误是:
org.openqa.selenium.WebDriverException: unknown error: Element is not clickable at point (634, 498). Other element would receive the click:
请注意,复选框在屏幕上不可见,必须将其滚动到视图中。但是使用相同的代码,它可以与 FF 一起使用。 FF 可以点击复选框,即使它不在视图中。
我试过另一种方法,像这样:
WebElement a = webDriver.findElement(By.xpath("//label[@for='checkboxH']"));
a.sendKeys(Keys.ENTER);
a.click();
它也适用于 FF,但不适用于 Chrome 和 IE。看起来,带有 FF 的 selenium 会自动将元素滚动到视图中并执行单击它
我受困于 Chrome 和 IE。非常感谢任何帮助。谢谢
编辑
显然,我通过设置此功能解决了 IE 的问题,它适用于 IE:
capability.setCapability("nativeEvents", false);
使用 Chrome,我不知道哪些容量可以解决这个问题
我有一个解决方法:我使用 Actions 移动到元素,然后我使用 sleep 2 秒,然后就可以了。
我必须点击自定义复选框,它位于 div 内,如下代码所示:
<div class="checkbox input-group">
<input id="checkboxH" class="checkboxClass" type="checkbox" name="checkboxH">
<label class="required ng-scope" for="checkboxH">
Text of checkbox
</label>
</div>
我使用标签作为要点击的元素,它在 FF 上工作,如下代码
webDriver.findElement(By.xpath("//label[@for='checkboxH']")).click();
但它不适用于 Chrome(最新版本)和 IE11,错误是:
org.openqa.selenium.WebDriverException: unknown error: Element is not clickable at point (634, 498). Other element would receive the click:
请注意,复选框在屏幕上不可见,必须将其滚动到视图中。但是使用相同的代码,它可以与 FF 一起使用。 FF 可以点击复选框,即使它不在视图中。
我试过另一种方法,像这样:
WebElement a = webDriver.findElement(By.xpath("//label[@for='checkboxH']"));
a.sendKeys(Keys.ENTER);
a.click();
它也适用于 FF,但不适用于 Chrome 和 IE。看起来,带有 FF 的 selenium 会自动将元素滚动到视图中并执行单击它
我受困于 Chrome 和 IE。非常感谢任何帮助。谢谢
编辑
显然,我通过设置此功能解决了 IE 的问题,它适用于 IE:
capability.setCapability("nativeEvents", false);
使用 Chrome,我不知道哪些容量可以解决这个问题
我有一个解决方法:我使用 Actions 移动到元素,然后我使用 sleep 2 秒,然后就可以了。