码迷,mamicode.com
首页 > 其他好文 > 详细

selenium处理隐藏元素的方法

时间:2016-08-08 19:25:19      阅读:158      评论:0      收藏:0      [点我收藏+]

标签:

<li class="navbar-nav-item ">
      <a href="#" id="cust">XX管理</a>
                        <ul class="navbar-dropdown-menu">
                            <li class="dropitem-current"><a href="/Customer/Index">XX列表</a></li>
                            <li class="navbar-dropitem" id="list_2"><a href="/Customer/CommunicateIndex">XX列表</a></li>
                        </ul>
  </li>

第一种:
先将鼠标移动至需要经过悬停的元素,再获取显示的元素并点击;代码示例如下:
Actions action = new Actions(chrome);
action.moveToElement(chrome.findElement(By.id("cust")  )).perform(); // 鼠标移动到 toElement 元素中点
Thread.sleep(1000);
chrome.findElement(By.id("list_2") ).click(); // 【XX列表】click事件
 
chrome.manage().window().maximize(); // 窗口最大化
action.release(); // 鼠标事件释放  
       PS:
  1. 建议经过悬停的时候加入等待;
  2. 因鼠标事件稳定性较差建议操作后将窗口最大化;
  3. 鼠标事件结束后建议释放;


第二种:
     对于菜单中的隐藏的下拉选项,鼠标悬浮时才显示出来,调用 action.moveToElement(element).build().perform();或 action.keyDown(keys).build().perform();一般情况下都是可以解决的。然而某些时候却不管用,这时可以借助JavaScript实现隐藏元素的点击操作,代码示例如下:
         JavascriptExecutor js = (JavascriptExecutor) chrome;
         myjs="document.getElementsByClassName(‘dropitem-current‘)[0].childNodes[0].click();";
         System.out.print(myjs);
         js.executeScript(myjs);

selenium处理隐藏元素的方法

标签:

原文地址:http://www.cnblogs.com/lingling99/p/5750241.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!