最近在使用selenium抓取数据,但是需要使用js控制滚动条来加载数据。主要是不会js,不会直接使用js来加载数据。

这里就使用笨方法,控制滚动条滚动到制定元素来加载数据。

版本1:下拉滚动条

最开始使用的是滚动滚动条向下100000

用于标识滚动条位置的代码:

如果滚动条在最上方的话,scrollTop=0 ,那么要想使用滚动条在最下方,可以 scrollTop=100000这样就可以使滚动条在最下方

主要代码的实现为:

js="var q=document.documentElement.scrollTop=10000"driver.execute_script(js)

版本2:控制滚动条到指定位置

控制滚动条到制定的元素:

制定的元素的Class为”_52jv“,控制滚动条到该位置。

主要代码如下:

js = 'document.getElementsByClassName("_52jv")[0].scrollIntoView({block: "end", behavior: "smooth"})'browser.execute_script(js)

getElementsByClassName()获取当前网页中所有的class的名为"_52jv"的元素对象的列表。该函数可以更换为其他定位元素的函数。

scrollIntoView()滑动滚动条到该位置。

{block: "end", behavior: "smooth"}滑动到该元素的低端,并且缓慢滑动

这样就可以了。完成。

js拖拽元素到另一个元素_js控制浏览器滚动条到制定元素相关推荐

  1. js 拖拽元素 鼠标速度过快问题

    自己写一个小工具,使用js拖拽元素时,鼠标速度过快时 元素跟不上鼠标 看网上有人说把mousemove事件绑定到dom上 试了不管用 偶然发现拖拽文字丝毫无卡顿  不知道是不是元素比较复杂的缘故? s ...

  2. js 拖拽元素 鼠标速度过快元素跟不上

    自己写一个拖拽元素,使用js拖拽元素时,鼠标速度过快时 元素跟不上鼠标 参考了网上的文章 ,里面对比了绑定到 body和document上的不同点js 拖拽元素 鼠标速度过快问题 明白过来是因为速度过 ...

  3. js拖拽之二:实现拖动元素上下左右改变元素大小

    具体原理参考 js拖拽一 <script> var oDiv = document.getElementById("div1"); oDiv.onmousedown = ...

  4. sortable 拖拽时互换目标的位置_双端通用型JS拖拽插件的封装与应用

    最近工作中遇到一个需求,需要将一个元素从某位置拖动到另一固定位置后执行某一交互行为,具体效果如下: 这个看似简单的需求,然而实现起来却并不那么顺利.我首先想到的是如何通过哪个现有的插件来快速解决这个问 ...

  5. html列表拖拽排序插件,JS拖拽排序插件Sortable.js用法实例分析

    本文实例讲述了JS拖拽排序插件Sortable.js用法.分享给大家供大家参考,具体如下: 最近由于项目功能设计的原因,需要对table中的行实现拖拽排序功能,找来找去发现Sortable.js能很好 ...

  6. React.js实现原生js拖拽效果及思考

    一.起因&思路 不知不觉,已经好几天没写博客了...近来除了研究React,还做了公司官网... 一直想写一个原生js拖拽效果,又加上近来学react学得比较嗨.所以就用react来实现这个拖 ...

  7. js拖拽库——Sortable.js

    Sortable.js是一款优秀的js拖拽库,支持ie9及以上版本ie浏览器和现代浏览器,也可以运行在移动触摸设备中.不依赖jQuery.支持 Meteor.AngularJS.React.Vue.K ...

  8. js 拖拽生成html,js拖拽插件 js 拖拽控件生成自定义表单 怎么实现

    想请教一个js的问题,拖拽控件 js 拖拽控件生成自定义表单 怎么实现 说说步骤吧 监听mousedown事件 - 获取鼠标点击元素,判断是否可拖拽 - 设置flag做标记 - 建一个tempDOM, ...

  9. php拖拽原理,JS拖拽效果及原理解析

    这篇文章主要介绍了如何实现js拖拽效果及原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 元素拖拽分成3个步骤:按下鼠标,移动鼠标,松开鼠标. ...

最新文章

  1. 以后配置Nginx 用这款神器!
  2. VC2010编译boost
  3. autocomplete触发事件_输入内容的自动匹配(AutoCompleteTextView)的点击事件遇到的问题...
  4. Nacos 2.0 升级前后性能对比压测
  5. jQuery和Prototype兼容问题
  6. c 语言栈,C语言栈
  7. mysql知识汇总2019
  8. 荣耀Magic 3更多细节曝光:全系挖孔屏+最高100W快充
  9. 基于scikit-learn的随机森林调参实战
  10. android 自定义控件之下拉刷新源码详解
  11. InnoDB存储引擎相关问题整理
  12. java爬取app_Java实现爬虫给App提供数据(Jsoup 网络爬虫)
  13. 为海思u-boot快速生成reg_info.bin文件
  14. 2020AI顶会的腾讯论文解读 | 多模态学习、视频内容理解、对抗攻击与对抗防御等「AI核心算法」
  15. 大数据写入到Oracle数据库(批量插入数据)
  16. 和菲利普•科特勒的《营销管理》一样,这些都是比较好的市场营销书籍
  17. Kubernetes网络插件flannel和calico
  18. python-图片上添加字符
  19. 被口罩挡住口红色号的年轻人,撑起百亿美瞳市场
  20. 建模杂谈系列142 关于MVD的思考

热门文章

  1. C++ primer第一章练习笔记及书店程序
  2. 基于redis的悲观锁
  3. 实例解读什么是Redis缓存穿透、缓存雪崩和缓存击穿
  4. python3.7安装, 解决pip is configured with locations that require TLS/SSL问题
  5. 读《程序是怎样跑起来的》第三章有感
  6. Homework1_3015218130_许鹏程
  7. Python : *args和**kwargs是什么东东呢?
  8. LightOJ 1045 - Digits of Factorial (n!化为m进制后有多少位数字)
  9. 【源码】ListT泛型绑定repeater,以及repeater的交替绑定
  10. [ActiveRecord] 之ActiveRecordMediator