<ul class="first-of-type">
<li id="yui-gen0" class="yuimenubaritem service_management first-of-type yuimenubaritem-hassubmenu topmenu-selected" groupindex="0" index="0">
<a class="yuimenubaritemlabel yuimenubaritemlabel-hassubmenu" href="#Service Management"> Service Management</a>
<div id="Service Management" class="yui-module yui-overlay yuimenu yui-overlay-hidden" style="z-index: 2; position: absolute; visibility: hidden;">
</li>
<li id="yui-gen1" class="yuimenubaritem signal_management yuimenubaritem-hassubmenu" groupindex="0" index="1">
<li id="yui-gen2" class="yuimenubaritem change_management yuimenubaritem-hassubmenu" groupindex="0" index="2">
<li id="yui-gen3" class="yuimenubaritem substitution_management yuimenubaritem-hassubmenu" groupindex="0" index="3">
<li id="yui-gen4" class="yuimenubaritem video_configuration_standard yuimenubaritem-hassubmenu" groupindex="0" index="4">
<li id="yui-gen5" class="yuimenubaritem dashboard yuimenubaritem-hassubmenu" groupindex="0" index="5">
<li id="yui-gen6" class="yuimenubaritem administration yuimenubaritem-hassubmenu" groupind
I'm not able to click the link - <a class="yuimenubaritemlabel yuimenubaritemlabel-hassubmenu" href="#Service Management"> Service Management</a>
我尝试使用以下代码,但它无效。
方法1:
WebElement e1 = driver.findElement(By.linkText("Service Management"));
e1.click();
Method 2(used Explicit wait as well):
action.moveToEleement(e1).build().perform();
请注意,上面提到的所有方法都是继续尝试点击该元素很长时间,但从不适合我。
任何有关的建议......
答案 0 :(得分:0)
查看标记,我可以说文本Service Management
之前有一个空格因此使用以下(文本前面有空格):
driver.findElement(By.linkText(" Service Management")).click();
或按照Subhrajyoti Majumder的回答。而不是我的答案,Subhrajyoti Majumder的回答很好。如果它适合你,请接受他的回答。
答案 1 :(得分:0)
要么提供答案TDHM,要么尝试使用XPath。这样我可能会点击这样:
driver.findElement(By.xpath("//a[contains(text(), 'Service Management')]")).click();
&#39;包含&#39; -part将查找包含&#39;服务管理&#39;的元素的文本值。 (我们的元素所做的)。
这样,即使决定在将来删除文本之前的空格,脚本也能正常工作。