zoukankan      html  css  js  c++  java
  • Selenium常用操作汇总二——如何把一个元素拖放到另一个元素里面(转)

    Q群里有时候会有人问,selenium  webdriver怎么实现把一个元素拖放到另一个元素里面。这一节总一下元素的拖放。

    下面这个页面是一个演示拖放元素的页面,你可以把左右页面中的条目拖放到右边的div框中。

    http://koyoz.com/demo/html/drag-drop/drag-drop.html

    现在来看看selenium webdriver是怎么实现drag and drop的吧。let‘s go!

    import org.openqa.selenium.By;  
    import org.openqa.selenium.WebDriver;  
    import org.openqa.selenium.WebElement;  
    import org.openqa.selenium.firefox.FirefoxDriver;  
    import org.openqa.selenium.interactions.Actions;  
      
    public class DragAndDrop {  
      
        /** 
         * @author gongjf 
         */  
        public static void main(String[] args) {  
            // TODO Auto-generated method stub  
            System.setProperty("webdriver.firefox.bin","D:\Program Files\Mozilla Firefox\firefox.exe");    
            WebDriver dr = new FirefoxDriver();  
            dr.get("http://koyoz.com/demo/html/drag-drop/drag-drop.html");  
              
            //首先new出要拖入的页面元素对象和目标对象,然后进行拖入。  
            WebElement  element = dr.findElement(By.id("item1"));  
            WebElement  target = dr.findElement(By.id("drop"));  
            (new Actions(dr)).dragAndDrop(element, target).perform();  
              
            //利用循环把其它item也拖入  
            String id="item" ;  
            for(int i=2;i<=6;i++){  
                String item = id+i;  
                (new Actions(dr)).dragAndDrop(dr.findElement(By.id(item)), target).perform();  
            }  
        }  
      
    }  

     代码很简单,需要注意的是(new Actions(dr)).dragAndDrop(element, target).perform();这句话中,dragAndDrop(element, target)这个方法是定义了“点击element元素对象,然后保持住,直到拖到目标元素对象里面才松开”这一系列动作的Actions,如果你不调用perform()方法,这个Actions是不会执行的。over!

  • 相关阅读:
    Tampermonkey 油猴脚本开发 入门
    k8s 上安装 lamp 环境
    centOS 7.9 k8s 安装 和 基本命令
    力扣59-螺旋矩阵 II
    力扣54-螺旋矩阵
    力扣705-设计哈希集合
    力扣706-设计哈希映射
    scrapy参数-COOKIES_ENABLED
    优雅降级、渐进增强
    e-cahr的地图组件封装(浙江省为例)
  • 原文地址:https://www.cnblogs.com/xinxin1994/p/9207183.html
Copyright © 2011-2022 走看看