【问题标题】:How to scroll horizontally in a page using Robotframework Ride如何使用 Robotframework Ride 在页面中水平滚动
【发布时间】:2015-11-10 05:02:25
【问题描述】:

如何使用 Robotframework Ride 在页面中水平滚动?

div class="dataTables_scrollBody" style="overflow: auto; width: 100%

如果我使用 Testscroll 0 250,它不会水平滚动。

【问题讨论】:

  • RIDE 是一个 IDE——你不能用 RIDE 本身滚动网页。您是在问如何使用机器人框架和 selenium 关键字库来滚动网页?
  • 是水平滚动网页。我可以垂直滚动网页。但不是水平的
  • 对于垂直滚动,我使用此代码。测试滚动 [参数] ${x_location} ${y_location} 执行 Javascript window.scrollTo(${x_location},${y_location}) 所以我调用方法测试滚动 0 250 垂直滚动页面什么是水平滚动网页的方式页面。
  • 在 jquery 的帮助下,我得到了滚动的宽度 jQuery('.dataTables_scrollBody').width() 获取宽度的命令是什么。如果我给 get get length 或 get value 它不完全保留宽度。总宽度为 1126。如果我给定长度,它返回 40。如果我得到宽度,我将轻松使用 jQuery('.dataTables_scrollBody').scrollLeft(1126)。所以请告诉我如何获得确切的宽度
  • 您解决了这个问题吗?我也有同样的问题

标签: python xpath robotframework


【解决方案1】:

我能够成功地水平或垂直滚动​​网页。请使用关键字(执行 Javascript)

语法

window.scrollTo(xpos, ypos)

执行 Javascript window.scrollTo(0,5000) 要么 执行Javascript window.scrollTo(0,document.body.scrollHeight)

更多详情请关注https://www.w3schools.com/jsref/met_win_scrollto.asp

【讨论】:

    【解决方案2】:

    我认为唯一的选择是通过 javascript 执行。我刚刚通过了同样的问题,我发现的所有网页都是指javascript执行。

    我发现的最佳方法是:

    *** Settings ***
    Library           Selenium2Library
    
    *** Test Cases ***
    Scroll Page
        Open Browser    http://demo.mahara.org    firefox
        Maximize Browser Window
        Sleep    5s
        Scroll Page To Location  MyDivID  0    2000
    
    *** Keywords ***
    Scroll Page To Location
        [Arguments]   ${id}  ${x_location}    ${y_location}
        Execute JavaScript    document.getElementById('${id}').scrollTo(${x_location},${y_location})
    

    Source Reference

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-02
      • 2016-08-17
      • 1970-01-01
      相关资源
      最近更新 更多