• 自动化测试基础篇--Selenium中JS处理滚动条


    前言

    什么是JS?
    JS就是JavaScript;
    JavaScript 是世界上最流行的脚本语言;
    JavaScript 是属于 web 的语言,它适用于 PC、笔记本电脑、平板电脑和移动电话;
    JavaScript 被设计为向 HTML 页面增加交互性;
    许多 HTML 开发者都不是程序员,但是 JavaScript 却拥有非常简单的语法。几乎每个人都有能力将小的 JavaScript 片段添加到网页中。

    一、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)
    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)

    二、参考代码

     1 #!/usr/bin/env python
     2 # -*- coding: utf-8 -*-
     3 # @File    : jss.py
     4 # @Software: PyCharm
     5 from selenium import webdriver
     6 import time
     7 from selenium.webdriver.common.keys import Keys
     8 url = 'http://www.cnblogs.com/sanzangTst/'
     9 browser = webdriver.Firefox()
    10 browser.get(url)
    11 time.sleep(3)
    12 # 拉到底部
    13 js="var q=document.documentElement.scrollTop=10000"
    14 browser.execute_script(js)
    15 
    16 # 回到顶部
    17 js="var q=document.documentElement.scrollTop=0"
    18 browser.execute_script(js)
    19 
    20 # 拖到指定位置
    21 target = browser.find_element_by_id("homepage1_HomePageDays_DaysList_ctl05_DayList_TitleUrl_0")
    22 browser.execute_script("arguments[0].scrollIntoView();", target)
    23 
    24 #滚动到底部
    25 js = "window.scrollTo(0,document.body.scrollHeight)"
    26 browser.execute_script(js)
    27 
    28 #滚动到顶部
    29 js = "window.scrollTo(0,0)"
    30 browser.execute_script(js)
     
     
  • 相关阅读:
    seurat 单细胞数据分析中 VizDimLoadings 函数
    R语言中unname函数
    R语言中 %||%什么意思?
    R语言中lapply函数
    R语言中当数据只有一列时,提取数据,增加drop = FALSE保证提取后的数据仍然为数据框
    R语言中条件表达语句ifelse语句
    R语言中依据数据框元素筛选元素
    seurat 单细胞数据分析中 VariableFeaturePlot函数实现
    R语言中any运算符是什么意思
    weixueyuanNginx核心配置指令2
  • 原文地址:https://www.cnblogs.com/sanzangTst/p/7692285.html
Copyright © 2020-2023  润新知