前言:最近编写自动化用例时,遇到页面滚动条的问题,顺便记录下,以免后面忘记
页面滚动条可以分为三类:针对整个HTML, 针对body, 针对某个div
1.如果滚动条是针对整个HTML可以用如下方式:通过调整scrollTop的值来上下滑动
js = "var q=document.documentElement.scrollTop=10000" # documentElement表示获取根节点元素
driver.execute_script(js)
2.如果滚动条是针对整个body可以用如下方式:
js = "var q=document.body.scrollTop=10000" # documentElement表示获取body节点元素
driver.execute_script(js)
3.如果滚动条是针对某个div可以用如下方式:该页面的滚动条就是针对class='main’的div而言的,
getElementsByClassName返回的是一个元素列表,0表示第一个元素,所以使用的时候要加索引
js = "var q=document.getElementsByClassName('main')[0].scrollTop=10000" # getElementsByClassName表示获取class='main'的元素列表,0表示第一个,所以使用的时候要加索引
driver.execute_script(js)
说明:
1.document.body返回的是<body>元素,document.documentElement返回的是<html>元素,getElementByClassName()返回的是所有执行类名的元素集合
2.scrollTop=0,表示滚动到最顶部,scrollTop=1000 标识向下滚动1000,如果是左右滑动可以通过scrollLeft来控制,0表示最左端