首页
学习
活动
专区
圈层
工具
发布

JS判断滚动条是否停止滚动

背景:昨天一个同事有种需求,有一个展示数据区域的div,带滚动条,当滚动条滚动时,需要向后台发请求,计算数据,再拿到前台展示。        ...分析:由于数据量级别较大,所以当滚动条滚动时,如果时时向后台发请求,对服务器和浏览器都造成巨大的压力。想到的解决方案是,当滚动条停止时,再去发请求计算数据。...那么问题来了,如何判断滚动条是否停止了呢?        解决:搜索了一下,js本身是无法判断滚动条是在滚动状态还是停止状态,只有通过其它方式了。...后来想到的思路是当滚动条滚动的时候,发起一个定期执行的方法,并记录一次当前滚动条到顶部的距离,这个方法中判断此时滚动条到顶部的距离是否和上次记录的相等,如果相等,那么说明停止滚动了,不相等,还在滚动。...; clearInterval(interval); interval = null; } } //--> body> body

23.3K00
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Js处理滚动条和日期框

    有2种方式 1.通过Js处理滚动条 如果将元素拖动到可见区域之后,再去操作它,也就是处理这个滚动条。...滚动条不是html页面的元素,它是浏览器的元素。想获取浏览器的元素,就不能走常规套路啦,要通过javascript来执行。 不是所有的元素都一定要拖动到可见区域才能操作的。...例如底部的页面跳转:有的系统,虽然进来是这个地方,想操作页面底部的元素,可以操作,也不需要拖动滚动条,它会自动将它拖动到可见区域,然后去操作它。...10)如何判定这个页面需要不需要这种滚动操作呢? 如果你的被测系统某一个页面当中,因为太长了出现了滚动条,怎么做呢?...driver.find_element_by_id("kw").send_keys("柠檬班") driver.find_element_by_id("su").click() #滚动条处理 # 1.

    13.8K10

    Selenium页面交互之JS处理滚动条

    selenium页面交互过程,操作中常见需要点击某个元素,但是页面看不到该元素,需要滑动滚动条,滑到可见处,在进行下一步的操作,那么UI自动化中我们就是使用到execute_script方法进行实现,首先简单介绍一下滑动滚动条的常见语法...滚动条回到顶部 # js="var q=document.getElementById('id').scrollTop=0" driver.execute_script(js) # js="var q...=document.documentElement.scrollTop=0" driver.execute_script(js) 滚动条拉到底部 # js="var q=document.getElementById...js = "var q=document.documentElement.scrollTop=100000"dr.execute_script(js)'''#若要对页面中的内嵌窗口中的滚动条进行操作,要先定位到该内嵌窗口...,在进行滚动条操作 js="var q=document.getElementById('id').scrollTop=100000" driver.execute_script(js)'''t.sleep

    7.6K10

    iframe 滚动条

    滚动条重复 在调用框架或者多级 iframe 的时候,经常会出现多个滚动条或者左右都有的情况,需要我们进行调整,现就设置方法记录如下。...去掉全部滚动条 设置scrolling属性 scrolling: auto // 在需要的时候显示滚动条 scrolling: yes // 始终显示滚动条 scrolling: no //始终隐藏滚动条...设置 body body {overflow: hidden} 可以去看滚动条,也可以用来去看某一个滚动条时的方案。...有选择的去掉滚动条 body {overflow-x: auto; overflow-y: hidden;} /* 去看右边的滚动条,保留下面的 */ body {overflow-x: hidden;...overflow-y: auto;} /* 去掉底下的滚动条,保留右边 */ 代码优先级 如果 scrolling: auto 或者 scrolling:yes 会依据 body 的值显示或者隐藏;如果

    5.5K20

    python自动化17-JS处理滚动条

    这时候需要借助滚动条来拖动屏幕,使被操作的元素显示在当前的屏幕上。 滚动条是无法直接用定位工具来定位的。...selenium里面也没有直接的方法去控制滚动条, 这时候只能借助J了,还好selenium提供了一个操作js的方法: execute_script(),可以直接执行js的脚本。...二、控制滚动条高度 1.滚动条回到顶部: js="var q=document.getElementById('id').scrollTop=0" driver.execute_script(js)...2.Chrome浏览器解决办法: js = "var q=document.body.scrollTop=0" driver.execute_script(js) 五、元素聚焦 1.虽然用上面的方法可以解决拖动滚动条的位置问题...js = "window.scrollTo(0,document.body.scrollHeight)" driver.execute_script(js) #滚动到顶部 js = "window.scrollTo

    7.7K20
    领券