如何在单击跨度元素时停止Selenium
以下是元素如何在单击跨度元素时停止Selenium,selenium,Selenium,以下是元素 <a href="#" class="finalLevel showMenuElement" data-index="8,2,5" title="Workitem Summary" data-wintitle="Workitem Summary">Workitem Summary<span id="fav" class="addtoFav"></span></a> 标记之间的文本是“工作项摘要”,因此 driver.findElem
<a href="#" class="finalLevel showMenuElement" data-index="8,2,5" title="Workitem Summary" data-wintitle="Workitem Summary">Workitem Summary<span id="fav" class="addtoFav"></span></a>
标记之间的文本是“工作项摘要”,因此
driver.findElement(By.linkText("Workitem Summary")).click();
将单击该超链接
跨度无论如何都在锚定标记之间
你可以有这样的东西:
driver.findElement(By.xpath("//a[@title='Workitem Summary']")).click()
希望这有帮助。标记之间的文本是“工作项摘要”,因此如果您愿意使用
driver.findElement(By.linkText("Workitem Summary")).click();
将单击该超链接
跨度无论如何都在锚定标记之间
你可以有这样的东西:
driver.findElement(By.xpath("//a[@title='Workitem Summary']")).click()
希望这能有所帮助。您可以尝试使用“偏移”单击(从左上角单击以像素为单位的x-y坐标距离): 为X偏移和Y偏移输入相应的值(以像素为单位) 编辑: OP能够通过以下代码解决问题:
WebElement add1 = driver.findElement(By.linkText("Workitem Summary"));
int width = add1.getSize().getWidth();
Actions act = new Actions(driver);
act.moveToElement(add1).moveByOffset((width / 2) - 2, 0).click().perform();
add1.click();
可以尝试使用“偏移”单击(从左上角单击x-y坐标距离(以像素为单位): 为X偏移和Y偏移输入相应的值(以像素为单位) 编辑: OP能够通过以下代码解决问题:
WebElement add1 = driver.findElement(By.linkText("Workitem Summary"));
int width = add1.getSize().getWidth();
Actions act = new Actions(driver);
act.moveToElement(add1).moveByOffset((width / 2) - 2, 0).click().perform();
add1.click();
发布html代码。
是
节点的子节点。为什么不考虑
?你的用例是什么?Span是链接的一部分,如果你想在你喜欢的链接中添加这个链接,你可以使用Span。但是,由于我想打开链接,我希望避免发布您的html代码。
是
节点的子节点。为什么不考虑
?你的用例是什么?Span是链接的一部分,如果你想在你喜欢的链接中添加这个链接,你可以使用Span。但由于我想打开链接,我想避免Span谢谢你的回答,但结果仍然是相同的答案,但结果仍然是相同的你使用了什么x-y值?尝试使用较低的值(如2px)。值为254和171,这太多了。这几乎肯定会在元素外部单击。试着用5和5像素。它做了一些事情,让我解释一下,从左上角我有一个菜单,我点击它,它给出了这样的东西:a B C D E现在点击a,显示屏幕和其他菜单项一样,a A1 B A2 C A3 D E我想点击E-E4,尝试这个5,5,它实际上导航到了E-E4,但点击的链接是D-D4,E-E4和D-D4都将共享相同的坐标,因此我们即将修复它:)得到解决方案,WebElement add1=driver.findElement(By.linkText(“工作项摘要”);int width=add1.getSize().getWidth();动作动作=新动作(驱动);moveToElement(add1).moveByOffset((宽度/2)-2,0.click().perform();添加1.单击();您使用了什么x-y值?尝试使用较低的值(如2px)。值为254和171,这太多了。这几乎肯定会在元素外部单击。试着用5和5像素。它做了一些事情,让我解释一下,从左上角我有一个菜单,我点击它,它给出了这样的东西:a B C D E现在点击a,显示屏幕和其他菜单项一样,a A1 B A2 C A3 D E我想点击E-E4,尝试这个5,5,它实际上导航到了E-E4,但点击的链接是D-D4,E-E4和D-D4都将共享相同的坐标,因此我们即将修复它:)得到解决方案,WebElement add1=driver.findElement(By.linkText(“工作项摘要”);int width=add1.getSize().getWidth();动作动作=新动作(驱动);moveToElement(add1).moveByOffset((宽度/2)-2,0.click().perform();添加1.单击();