zoukankan      html  css  js  c++  java
  • 元素滚到到底部原理

    元素滚动到底部原理

    element.scrollHeight - element.scrollTop === element.clientHeight

    另外一种判断方法(元素占据整屏适用)

    element.getBoundingClientRect().bottom - element.clientHeight < threshold

    1、判断滚动条滚动到最底端: scrollTop == (scrollHeight – clientHeight)
    2、在滚动条距离底端50px以内: (scrollHeight – clientHeight) – scrollTop <= 50
    3、在滚动条距离底端5%以内: scrollTop / (scrollHeight – clientHeight) >= 0.95

    事件处理如下:

    var clientHeight = ele.clientHeight; // 元素窗口的高度(不会变)  
    $(ele).scroll(function(event){  
        var scrollTop = ele.scrollTop; // 当前滚动条位置    
        var scrollHeight = ele.scrollHeight; // 滚动条总高度     
        if (scrollTop + clientHeight >= scrollHeight) {            
            showMore();  
        }    
    });  

    几种高度的区别:

    clientHeight = height+padding-横向滚动轴高度,就是可视区域高度
    offsetHeight = padding+height+border+横向滚动轴高度,可视区域加上滚动轴的高度
    scrollHeight = 元素的滚动区域高度,大于等于offsetHeight

    window的高度获取方法如下

    var doc = document.documentElement || document.body;
    var scrollTop = doc.scrollTop;
    var scrollHeight = doc.scrollHeight;
    var clientHeight = doc.clientHeight;

    屏幕的高度还可以使用

    window.getBoundingClientRect().height || window.innerHeight

    参考: https://blog.csdn.net/wangjun5159/article/details/54916404

  • 相关阅读:
    some tips
    ORA00847: MEMORY_TARGET/MEMORY_MAX_TARGET and LOCK_SGA cannot be set together
    Chapter 01Overview of Oracle 9i Database Perfomrmance Tuning
    Chapter 02Diagnostic and Tuning Tools
    变量与常用符号
    Chapter 18Tuning the Operating System
    标准输入输出
    Trace files
    DBADeveloped Tools
    Chapter 03Database Configuration and IO Issues
  • 原文地址:https://www.cnblogs.com/mengff/p/9015015.html
Copyright © 2011-2022 走看看