我试图使用selenium web驱动程序滚动handson表但无法这样做

时间:2015-05-05 06:12:16

标签: java selenium selenium-webdriver

我的handson表有200多条记录。但我只能看到前27条记录,只能看到25列中的前8列。

以下是我尝试过的代码类型。

  1. 代码1:

    WebElement invoice=driver.findElement(By.xpath("//*[@id='ht_aeb2df21163d7999']/div[1]/div[1]/div[1]/table/tbody/tr[1]/td[7]/a/i"));
    int y=invoice.getLocation().y; 
    int x=invoice.getLocation().x; 
    Actions act=new Actions(driver); 
    act.clickAndHold(invoice).dragAndDropBy(invoice,x,y).build().perform();
    invoice.click();
    
  2. 代码2:

    Actions action=new Actions(driver);
    action.sendKeys(Keys.LEFT).perform();
    action.sendKeys(Keys.LEFT).perform();
    action.sendKeys(Keys.LEFT).perform();
    
  3. 代码3:

    JavascriptExecutor js = (JavascriptExecutor)driver;
    js.executeScript("scroll(0, 750)");
    

1 个答案:

答案 0 :(得分:0)

我会尝试使用javascript方法,但要将实际元素作为目标滚动。 scroll函数以窗口为目标。

例如,我可以通过执行

滚动example here
document.querySelectorAll('.wtHolder')[0].scrollTop = 500

使用开发工具控制台。