zoukankan      html  css  js  c++  java
  • selenium处理隐藏元素的方法

    <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);
  • 相关阅读:
    【中文分词】条件随机场CRF
    【中文分词】最大熵马尔可夫模型MEMM
    【中文分词】二阶隐马尔可夫模型2-HMM
    【中文分词】隐马尔可夫模型HMM
    Elasticsearch的CRUD:REST与Java API
    d3的比例尺和坐标轴
    webpack DllPlugin的用法
    webpack单独启动目录方法
    d3的常用方法和数据类型
    d3中的enter,exit,update概念
  • 原文地址:https://www.cnblogs.com/weiwei-python/p/9807953.html
Copyright © 2011-2022 走看看