网页中有内嵌横向滚动条,在写自动化的时候,想要获取滚动条滑动之后加载出来的网页元素,而使用开发者工具去定位横向滚动条,发现根本无法定位到滑动条本身对应的网页元素。翻阅了很多网络资料,发现可以通过哪个网页元素包含了滚动条来操控滚动条的位置,再借助Execute JavaScript执行js脚本。
定位器点红色框框内的横向滑动条,实际定位到的确实蓝色的框框。
关于控制内嵌横向滚动条位置:
document.getElementsByClassName("contentScrollerWrap")[0].scrollLeft=1000
这里在试验时发现尽量填写个较大的值,可以看到质的变化。一开始写1000,结果滑动条几乎没变,以至于自己觉得这样实现是有问题的,后来换了种方式,增量方式写:
document.getElementsByClassName("contentScrollerWrap")[0].scrollLeft+=1000
这样就看到了滑动条的位置发生了变化。
想要滑动条滑动最右侧,可以这样写:
document.getElementsByClassName("contentScrollerWrap")[0].scrollLeft=9999
为了实现滚动条滚动到最右侧,加载grid所有的cell,这里模拟了滑动条多次滚动。Robot Framework中实现如下: