Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/374.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 行动类别obje_Java_Selenium_Selenium Webdriver_Action - Fatal编程技术网

Java 行动类别obje

Java 行动类别obje,java,selenium,selenium-webdriver,action,Java,Selenium,Selenium Webdriver,Action,这是给予 陈旧元素引用:元素未附加到页面文档 我不能多次调用actions类的对象吗? 如果我创建了一个新对象,那么它可以正常工作 public void actionMethods() throws Exception { Actions act = new Actions(driver); WebElement ele1 = driver.findElement(By.xpath("//*[@id=\"menu-item-37\"]/a")); act

这是给予

陈旧元素引用:元素未附加到页面文档

我不能多次调用actions类的对象吗? 如果我创建了一个新对象,那么它可以正常工作

public void  actionMethods() throws Exception 
{
    Actions act = new Actions(driver);      
    WebElement ele1 = driver.findElement(By.xpath("//*[@id=\"menu-item-37\"]/a"));
    act.moveToElement(ele1).build().perform();
    Thread.sleep(2000);
    driver.findElement(By.xpath("//*[@id=\"menu-item-4868\"]/a")).click();
    Thread.sleep(2000);

    driver.navigate().back();
    driver.navigate().refresh();
    Thread.sleep(2000);

    act.moveToElement(ele1).build().perform();
    Thread.sleep(2000);
    driver.findElement(By.xpath("//*[@id=\"menu-item-4877\"]/a")).click();

    Thread.sleep(3000);
}

当您移动到不同的页面,甚至刷新当前页面时,驱动程序会丢失以前找到的所有元素

ele1在页面导航后过时,在第二幕中使用它之前,需要重新定位它。moveToElementele1

driver.navigate().back();
driver.navigate().refresh();
Thread.sleep(2000);

// find ele1 again
ele1 = driver.findElement(By.xpath("//*[@id=\"menu-item-37\"]/a"));
act.moveToElement(ele1).build().perform();