我有一个必须使用迭代器扫描的元素列表,然后单击所需的元素。
List <WebElement> lt = driver.findElements(By.tagName("strong"));
Iterator <WebElement> it= lt.iterator();
while(it.hasNext())
{
if(it.next().getText().equals(cat))
{
it.next().click();
break;
}
}
在我的代码中,当迭代器找到元素时,执行进入 if 循环,但在遇到 it.next().click(); 时选择下一个元素;
如何点击 if 循环指向的当前元素?
最佳答案
每次调用 it.next()
时,您都会得到下一个元素并且将光标向前移动。
相反,存储实例,进行检查并执行点击,如下所示:
WebElement e;
while(it.hasNext())
e = it.next();
if(e.getText().equals(cat)) {
e.click();
}
}
关于java - 你如何使用迭代器点击当前元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46090456/