美文网首页
原生JS实现下拉事件

原生JS实现下拉事件

作者: 葡萄果茶 | 来源:发表于2017-12-12 18:51 被阅读35次

一 获取三个高度页面滚动距离、文档总高度、浏览器视口高度

//滚动条在Y轴上的滚动距离

function getScrollTop() { 

    var  scrollTop = 0, bodyScrollTop= 0,

           documentScrollTop= 0;

    if (document.body) {

          bodyScrollTop=document.body.scrollTop;

} ;

    if (document.documentElement) {

        documentScrollTop=document.documentElement.scrollTop;

    }

    scrollTop= (bodyScrollTop - documentScrollTop > 0) ?bodyScrollTop :       documentScrollTop;returnscrollTop;

}

//文档的总高度

   function getScrollHeight() {

         varscrollHeight = 0,

         bodyScrollHeight= 0,

         documentScrollHeight= 0;if(document.body) {

         bodyScrollHeight=document.body.scrollHeight;

   }

   if (document.documentElement) {

         documentScrollHeight=document.documentElement.scrollHeight;

   }

    scrollHeight= (bodyScrollHeight - documentScrollHeight > 0) ?bodyScrollHeight :       documentScrollHeight;returnscrollHeight;

}

//浏览器视口的高度

    function getWindowHeight() {

         varwindowHeight = 0;if(document.compatMode == "CSS1Compat") {

         windowHeight=document.documentElement.clientHeight;

} else{

         windowHeight=document.body.clientHeight;

}

    returnwindowHeight;

}

二 页面滚动至视口高度+页面Y轴滚动距离大于文档总高度 - 20px时触发ajax事件

    window.onscroll =function() {if(getScrollTop() + getWindowHeight() >= getScrollHeight() - 20) {

loadAjax();

} };

相关文章

  • 原生JS实现下拉事件

    一获取三个高度页面滚动距离、文档总高度、浏览器视口高度 //滚动条在Y轴上的滚动距离 function getSc...

  • 原生JS实现Ajax

    原生Js的实现 事件 鼠标事件 *e.stoppropagation();//阻止事件冒泡 键盘事件 事件对象(e...

  • 20、jQuery 事件机制

    20、jQuery 事件机制 原生js事件与jQuery事件: (1)用原生的js给div注册事件 原生js注册相...

  • 搜狗面试

    原型链上手写事件,手写原生js实现ajax事件,jsonp实现原理,阻止事件IE冒泡代码,事件捕获、处理,冒泡代码...

  • H5下拉刷新和上拉加载实现原理浅析

    下拉刷新 实现下拉刷新主要分为三步1、监听原生touchstart事件,记录其初始位置的值,```e.touche...

  • H5下拉刷新和上拉加载实现原理浅析

    下拉刷新 实现下拉刷新主要分为三步1、监听原生touchstart事件,记录其初始位置的值,```e.touche...

  • 简单代码实现H5下拉刷新和触底加载更多

    首先说一下实现原理:下拉刷新实现下拉刷新主要分为三步:监听原生touchstart事件,记录其初始位置的值,e.t...

  • 2019-01-20

    用原生的JS写了一个下拉菜单,主要是用addEventListener进行绑定click事件,然后采用冒泡方式进行...

  • zone.js

    zone.js 是angular2 实现事件的一种方式,它把原生的js的事件给重写了。比如 click 。

  • 实现通用的事件注册方法

    title: 实现通用的事件注册方法date: 2017-07-15tags: [原生js]categories:...

网友评论

      本文标题:原生JS实现下拉事件

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