有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java无法点击Chrome和IE11上的自定义复选框

我必须点击Customized复选框,它位于一个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。看起来,selenium和FF会自动将元素滚动到视图中,并对其执行单击操作

我被Chrome和IE困在这里。非常感谢您的帮助。谢谢

编辑

显然,我通过设置这个功能解决了IE的问题,它适用于IE:

capability.setCapability("nativeEvents", false);

对于Chrome,我不知道哪些功能可以解决这个问题


共 (1) 个答案

  1. # 1 楼答案

    我有一个解决办法:我用动作移动到元素,然后我用睡眠2秒钟,然后它就工作了