Android驱动程序的scrollTo和scrollToExact 方法的问题.方法不会滚动到所需的元素文本,而是滚动
Issue with scrollTo and scrollToExact methods of Android Driver. Methods do not scroll to required element text, but scroll to end of page
我们正在开发一个Cordova移动应用程序。在屏幕上,我们有一个表格格式的值列表。如果我们想选择移动设备上不可见范围内的元素,我们需要执行滚动操作。已经尝试了scrollTo()
和scrollToExact()
的方法,但这些方法不会滚动到所需的元素文本,而是超出它,即列表中的值末尾。
移动到本机上下文以执行滚动,具有相同的结果。
另外,尝试了Javascript方法window.scrollTo()
和scrollintoView()
,但滚动移动到所需的元素。
有没有其他方法可以实现在移动屏幕上滚动到必要的元素,这样它就不会滚动到必要的元素?
Appium 版本: 1.2.3
Java 客户端版本:2.1.0
谢谢 ShlomiTC 的帮助,我可以通过首先检查屏幕上是否有可用的元素并使用无限循环重复滚动屏幕直到单击元素来让它工作。如果未单击元素,则会发生异常,因此 try/catch 块在这里帮助了我。希望这对任何有类似问题的人有所帮助。
js = (JavascriptExecutor) driver;
js.executeScript("window.scrollTo(0,0)");
do
{
try
{
driver.findElement(By.xpath(<xpathexpresssion>).click();
break;
}
catch(Exception e)
{
js = (JavascriptExecutor) driver;
js.executeScript("window.scrollBy(0, 200)");
}
} while(true);
相关文章:
- 在D3.js中,有没有任何方法可以将x和y方向上的滚动事件绑定到平移svg
- jquery:将动画绑定到滚动条位置的更好方法
- 有没有一种方法可以直接从cordova获得滚动位置
- 使用 JavaScript 方法滚动
- VirtualScroll rowRenderer方法在滚动时被调用多次
- 滚动事件运行缓慢-有没有更轻松的方法
- 我需要一个带有可滚动正文的固定表头.我已经尝试了所有方法,但它似乎不起作用
- Jquery$(window).scrollTop();方法是滚动到页面的特定位置,然后在页面顶部再次滚动
- 通用化 jQuery 滚动方法
- 是否有任何跨浏览器方法可以获取带有滚动条的 DIV 宽度(如果存在)
- 从jQuery/JavaScript实现滚动的替代方法
- 安卓浏览器上的滚动事件未触发.需要解决方法
- 用于捕获滚动事件的跨浏览器方法(或暂时禁用滚动的更简单方法)
- Facebook找到了一种解决移动滚动的方法
- 使用ScrollPath jQuery插件,当它击中某个元素时暂停滚动的任何方法
- 在没有jquery的情况下自动滚动到以前位置的最佳方法(PHP和Javascript)
- Android驱动程序的scrollTo和scrollToExact 方法的问题.方法不会滚动到所需的元素文本,而是滚动
- 防止在内部 JavaScript 函数中滚动到顶部的任何方法
- jQuery滚动方法不工作
- 当一个方法被调用时,Mootools滚动方法应该自动调用