为了账号安全,请及时绑定邮箱和手机立即绑定

selenium中JS如何处理滚动条

标签:
JavaScript

前言

什么是JS?

JS就是JavaScript;

JavaScript 是世界上最流行的脚本语言;

JavaScript 是属于 web 的语言,它适用于 PC、笔记本电脑、平板电脑和移动电话;

JavaScript 被设计为向 HTML 页面增加交互性;

许多 HTML 开发者都不是程序员,但是 JavaScript 却拥有非常简单的语法。几乎每个人都有能力将小的 JavaScript 片段添加到网页中。

JS传送门:http://www.w3school.com.cn/b.asp

一、JS处理滚动条问题

1、滚动条回到顶部:

js="var q=document.getElementById('id').scrollTop=0"

driver.execute_script(js)

或者

js="var q=document.documentElement.scrollTop=0"

driver.execute_script(js)

2、滚动条拉到底部:

js="var q=document.getElementById('id').scrollTop=10000"

driver.execute_script(js)

或者

js="var q=document.documentElement.scrollTop=10000"

driver.execute_script(js)

3、滚动条拉到指定位置(具体元素):

target = driver.find_element_by_id("id_keypair")

driver.execute_script("arguments[0].scrollIntoView();", target)

4、通过模拟键盘DOWN()来拖动:

driver.find_element_by_id("id").send_keys(Keys.DOWN)

webp

image.png

5、scrollTo函数

--scrollHeight 获取对象的滚动高度。

--scrollLeft 设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离。

--scrollTop 设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离。

--scrollWidth 获取对象的滚动宽度。

滚动到底部

js = "window.scrollTo(0,document.body.scrollHeight)"

driver.execute_script(js)

滚动到顶部

js = "window.scrollTo(0,0)"

driver.execute_script(js)

webp

image.png

二、参考代码

  #!/usr/bin/env python
  # -*- coding: utf-8 -*-
  # @File    : jss.py
  # @Software: PyCharm
 from selenium import webdriver  
 import time  
 from selenium.webdriver.common.keys import Keys  
 url = 'http://www.cnblogs.com/sanzangTst/'
 browser = webdriver.Firefox() 10 browser.get(url) 11 time.sleep(3) 12 # 拉到底部
 js="var q=document.documentElement.scrollTop=10000"
 browser.execute_script(js) 15 
 # 回到顶部
 js="var q=document.documentElement.scrollTop=0"
 browser.execute_script(js) 19 
 # 拖到指定位置
 target = browser.find_element_by_id("homepage1_HomePageDays_DaysList_ctl05_DayList_TitleUrl_0") browser.execute_script("arguments[0].scrollIntoView();", target)  
 #滚动到底部
 js = "window.scrollTo(0,document.body.scrollHeight)"
 browser.execute_script(js) 27 
 #滚动到顶部
 js = "window.scrollTo(0,0)"
 browser.execute_script(js)



作者:TeacherAilie
链接:https://www.jianshu.com/p/95e3f7cb6391


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消