首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

JS判断滚动是否停止滚动

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

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

    如何判断 ScrollView、List 是否正在滚动

    欢迎大家在 Discord 频道[2] 中进行更多地交流判断一个可滚动控件( ScrollView、List )是否处于滚动状态在某些场景下具有重要的作用。...: UIScrollView)手指滑动可滚动区域后( 此时手指已经离开 ),滚动逐渐减速,在滚动停止时会调用此方法scrollViewDidEndDragging(_ scrollView: UIScrollView...本节采用的方法便是利用了上述特性,通过创建绑定于不同 Runloop 模式下的 TimerPublisher ,实现对滚动状态的判断。...在 ScrollView、List 发生滚动时,它们内部的子视图的位置也将发生改变。我们将以是否可以持续接收到它们的位置信息为依据判断当前是否处于滚动状态。...判断的准确度没有前两种方式高当可滚动组件中的内容出现了非滚动引起的尺寸或位置的变化( 例如 List 中某个视图的尺寸发生了动态变化 ),本方式会误判断为发生了滚动,但在视图的变化结束后,状态会马上恢复滚动结束滚动开始后

    3.8K40

    JavaScript 基于offsetHeight和clientHeight判断是否出现滚动

    通常,元素的offsetHeight是一种元素CSS高度的衡量标准,包括元素的边框、内边距和元素的水平滚动条(如果存在且渲染的话),不包含:before或:after等伪类元素的高度。...该属性包括内边距,但不包括垂直滚动条(如果有)、边框和外边距。...参考链接:https://developer.mozilla.org/zh-CN/docs/Web/API/Element/clientWidth 判断目标元素是否出现滚动条 targetElement...为目标html元素,以下代码用于判断该元素内是否出现滚动条 if (targetElement.offsetHeight > targetElement.clientHeight && targetElement.offsetWidth...) { console.log("出现垂直滚动条"); } if (obj.offsetHeight>obj.clientHeight) { console.log("出现水平滚动条"); }

    1.3K30

    Android中判断listview是否滑动到顶部和底部的实现方法

    * 具体点,只有当我的listview滑动到最顶部的时候,这时候下拉才执行刷新操作;只有当我的listview滑动到最底部的时候,这时候上拉才执行加载操作。 那么怎么判断listview的滑动位置呢?...其实还是比较好解决的,说一下我的想法: 顶部的判断,根据listview中的第一个item距离listview顶部的距离是否为0。...底部判断,根据listview中的最后一个item的底部与第一个item的顶部的距离是否为整个listview的高度。...= null && last_view.getBottom() == lsv_new_house.getHeight()){ // LogUtils.e("已经滚动到最底部了");...以上这篇Android中判断listview是否滑动到顶部和底部的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考。

    2.1K10

    通过 JS 判断页面是否滚动条的简单方法

    前言 最近在写插件的过程中,需要使用 JS 判断是否滚动条,搜了一下,大致方法都差不多,但都有些啰嗦,代码不够简洁。最终通过参考不同方法,写了一个比较简单的方法。...在判断滚动条的同时也需要计算滚动条的宽度,通过本篇文章一并与大家分享。 为什么要判断滚动条 ?...判断滚动条的需求在弹窗插件中用的较多,因为弹窗大多会添加 overflow: hidden 的属性,如果页面比较长的话,添加这个属性之后页面会有晃动。...为了增强用户体验,通过判断是否滚动条而添加 margin-left 属性以抵消 overflow: hidden 之后的滚动条位置。...判断是否滚动条的方法 其实只需要一行 JS 就可以,测试兼容 IE7 function hasScrollbar() { return document.body.scrollHeight >

    8.3K90

    3分钟搞定图片懒加载

    当页面滚动的时候需要去监听scroll事件,在scroll事件的回调中,判断我们的懒加载的图片判断是否出现在视口内,如果出现在视口内,则将data-src赋值src。...如何判断一个元素是否在视口内呢? 通过getBoundingClientRect()方法来获取元素的大小以及位置。...思路:当页面滚动的时候需要去监听scroll事件,在scroll事件的回调中,判断滚动是否滚动到最底部,如果是,则将将图片的 src 属性设置为data-src的值。...判断是否滚动到最底部的方法:滚动条到顶部距离 + 可视页面高度 >= 当前页面高度 var seeHeight = document.documentElement.clientHeight; // 可视页面高度...= document.body.offsetHeight // 当前页面高度 然后判断: scrollTop + seeHeight >= bodyHeight 当滚动条到达底部的时候,获取后端分页的数据

    2.4K20
    领券