Java span类定位器不可见/不可单击-selenium

Java span类定位器不可见/不可单击-selenium,java,html,selenium,selenium-webdriver,Java,Html,Selenium,Selenium Webdriver,以下是span的HTML: <td class="header-logout-btn"> <a href="logout.htm" class="btn switch-btn"> <i class="fa fa-times"></i><span class="hidden-xs">Home</span> </a> </td> 尝试以下解决方案: Xpath=/*[包含(text(),'Hom

以下是span的HTML:

<td class="header-logout-btn">
 <a href="logout.htm" class="btn switch-btn">
  <i class="fa fa-times"></i><span class="hidden-xs">Home</span>
 </a>
</td>

尝试以下解决方案:

Xpath=
/*[包含(text(),'Home')]


希望它能对您有所帮助。

通常,注销按钮将是子菜单,或者只有在主菜单上单击或鼠标悬停时,它才可见。通常,主菜单是配置文件图标。我假设这个注销按钮只有在点击主/配置文件按钮后才可见。这可能是按钮隐藏或不可单击的原因。下面给出了解决方案。 1.首先在主/配置文件菜单上单击或鼠标悬停,然后单击注销按钮。 2.你仍然想点击隐藏按钮。您可以尝试使用JavaScript executor,如下所示

Webelement eleLogout=driver.find element(By.class name("switch-btn"));
JavaScriptExecutor js=(JavaScriptExecutor)driver;
js.executeScript("arguments [0].click()",eleLogout);`

尝试点击链接

使用选择器,如:

xpath:
//a[包含(@href,'logout')]

/*[@class='header-logout-btn']/a[包含(@href,'logout')]

css:
a[href*=注销]


.header logout btn a[href*=logout]

正如类名本身所提到的,它是隐藏的,因此我们无法与它交互。我们需要在尝试使用-driver.findElement(by.xpath(//span[contains(text(),'Home')])之前,将鼠标悬停在父元素上使其可见
Webelement eleLogout=driver.find element(By.class name("switch-btn"));
JavaScriptExecutor js=(JavaScriptExecutor)driver;
js.executeScript("arguments [0].click()",eleLogout);`