美文网首页
window-到底刷新操作

window-到底刷新操作

作者: Arno_z | 来源:发表于2017-08-05 20:40 被阅读0次

经常看到有的网站在拉到最底下的时候会刷新内容,那么这个是怎么实现的呢?
其实就是针对特定的内容区域做了一个scroll事件处理,下面的例子是在window上添加了一个scroll事件。
判断是否到底的操作是判断当前拖动的距离和当前视区的高度之和是否达到总的文档高度,达到即进行对应的操作

<!DOCTYPE html>
<html>
<head>
    <title>Scroll</title>
    <style type="text/css">
    </style>
</head>
<body>
    <h1>滚动测试</h1>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <p>xxx</p>
    <script type="text/javascript">
        window.onscroll = function sFunc(){
            var topHeight = document.documentElement.scrollTop||document.body.scrollTop;
            var totalHeight = document.body.clientHeight;
            var viewHeight = window.innerHeight;
            if(topHeight + viewHeight >= totalHeight){
                var pNode = document.createElement("p");
                    var textNode = document.createTextNode(new Date() + "请求新数据");
                    pNode.appendChild(textNode);
                    document.body.appendChild(pNode);
            }
        }
    </script>
</body>
</html>

对于window添加了onscroll事件,然后每次scroll的时候,由:
document.documentElement.scrollTop||document.body.scrollTop获取当前位置距离顶部的距离
document.body.clientHeight获取文档的总高度
window.innerHeight获取视区高度
(上面的选择是在chrome下测试的,关于获取不同的宽高度的操作可能对于不同浏览器有不同的API)
然后你往下拉的时候就可以看到对应的输出。

相关文章

  • window-到底刷新操作

    经常看到有的网站在拉到最底下的时候会刷新内容,那么这个是怎么实现的呢?其实就是针对特定的内容区域做了一个scrol...

  • 产品设计之刷新

    再进行产品设计的时候,会涉及很多场景和页面在切换返回时的刷新操作,到底要不要刷新,手动刷新还是自动刷新?三三就目前...

  • iOS UITableView中刷新和编辑操作

    UITableView的刷新和编辑操作 1.刷新操作 全局刷新先修改模型数据然后刷新界面 局部刷新 2.左滑删除 ...

  • 如何刷新信息?

    进入【商家中心】—左侧菜单【信息推广】的「信息刷新」,点击信息后面的操作 「刷新」进行手动刷新。 批量刷新: 点击...

  • iOS 主线程,执行UI刷新

    主线程,执行UI刷新 延时操作

  • ReactNative mark

    1、对Model操作之后,页面/组件不刷新的问题 原因:对Model操作之后,不触发刷新页面/组件的行为 ...

  • 心香午语190706

    刷新 刷新是生命内在操作系统的升级。 升级的过程不是系统补丁的变化,而是全面覆盖旧的操作系统的...

  • Flutter(九)--Flutter中Widget刷新逻辑+源

    Flutter中Widget刷新逻辑+源码解读 前言 我们都知道StatefulWidget可以进行页面刷新操作,...

  • 12306网站启用图形验证码-数据分析搞笑片

    最少操作:1开始+1刷新+2(最少选中点击) 恶心操作:1开始+1刷新+2(最少选中点击)+N点击 【按照笔者点击...

  • js返回刷新、不刷新

    返回刷新 不刷新 下面一行代码执行的操作与单击后退按钮执行的操作一样:history.back()下面一行代码执行...

网友评论

      本文标题:window-到底刷新操作

      本文链接:https://www.haomeiwen.com/subject/rnywlxtx.html