java - Selenium :moveByOffset() 不起作用

标签 java selenium

使用 moveByOffset() 方法面对问题。

关于这个link我可以将 slider 移至右侧,但当我尝试将其移回左侧时,它就是不动。告诉我 moveByOffset() 方法是否有问题,或者我应该使用任何其他方法。

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.interactions.Actions;

public class JquerySlider {

public static void main(String[] args) throws InterruptedException {
    // TODO Auto-generated method stub
    WebDriver driver=null;
    try {

        System.setProperty("webdriver.chrome.driver","C:\\chromedriver\\chromedriver.exe");

        driver = new ChromeDriver();

        driver.get("https://jqueryui.com");

        driver.manage().window().maximize();

        driver.findElement(By.xpath("//a[text()='Slider']")).click();

        Actions actions = new Actions(driver);

        driver.switchTo().frame(0);

        WebElement element = driver.findElement(By.xpath("//div[@id='slider']/span"));

            for (int i = 1; i <=10; i++) {
                System.out.println(i);
                actions.clickAndHold(element).moveByOffset(i, 0).build().perform();
            }

            //WebElement element2 = driver.findElement(By.xpath("//div[@id='slider']/span"));

            /*for (int i = 10; i > 0; i--) {
                System.out.println("For 2 "+i);
                actions.clickAndHold(element).moveByOffset(0,0).release().build().perform();
            }*/ This part is not working...

    } catch (Exception e) {
        // TODO: handle exception
        System.err.println(e.getMessage());
    }finally{
        Thread.sleep(5000);
        driver.close();

    }


}

}

我是 Selenium 的新手,正在尝试研究它。请帮忙。提前致谢。

最佳答案

如果您想向后移动 slider ,您应该使用以下代码:

actions.clickAndHold(element).moveByOffset(-i,0).release().build().perform();

在你的第二个时间。

关于java - Selenium :moveByOffset() 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47091819/

相关文章:

java - 如何在日期对象 JAVA 中将 'AM' 更改为 'PM'

java - 当实体具有多对多关系时如何使用条件查询?

java - 黑莓 map 字段为空?

java - 是否可以清除/释放资源来重新启动某些处理而不重新启动应用程序?

java - 将破折号添加到 Java 正则表达式

java - 识别复选框组中的第 n 个复选框

c# - 登录弹出窗口和 Selenium

python - 为什么 Nose 测试会在 Windows 8 上留下孤立的 PhantomJS 进程?

java - WebElement 在运行时变为 null

python - 无法通过 Selenium 在 python 中运行 PhantomJS