jQuery scroll事件实现监控滚动条分页示例


Posted in Javascript onApril 04, 2014

scroll事件适用于window对象,但也可滚动iframe框架与CSS overflow属性设置为scroll的元素。

$(document).ready(function () { //本人习惯这样写了
    $(window).scroll(function () {
        //$(window).scrollTop()这个方法是当前滚动条滚动的距离
        //$(window).height()获取当前窗体的高度
        //$(document).height()获取当前文档的高度
        var bot = 50; //bot是底部距离的高度
        if ((bot + $(window).scrollTop()) >= ($(document).height() - $(window).height())) {
           //当底部基本距离+滚动的高度〉=文档的高度-窗体的高度时;
            //我们需要去异步加载数据了
            $.getJSON("url", { page: "2" }, function (str) { alert(str); });
        }
    });
});

注意:(window).height()和(document).height()的区别

jQuery(window).height()代表了当前可见区域的大小,而jQuery(document).height()则代表了整个文档的高度,可视具体情况使用.

注意当浏览器窗口大小改变时(如最大化或拉大窗口后) jQuery(window).height() 随之改变,但是jQuery(document).height()是不变的。

$(document).scrollTop() 获取垂直滚动的距离  即当前滚动的地方的窗口顶端到整个页面顶端的距离
$(document).scrollLeft() 这是获取水平滚动条的距离

要获取顶端 只需要获取到scrollTop()==0的时候  就是顶端了

要获取底端 只要获取scrollTop()>=$(document).height()-$(window).height()  就可以知道已经滚动到底端了

$(document).height()  //是获取整个页面的高度
$(window).height()  //是获取当前 也就是你浏览器所能看到的页面的那部分的高度  这个大小在你缩放浏览器窗口大小时 会改变 与document是不一样的  根据英文应该也能理解吧

自己做个实验就知道了
$(document).scroll(function(){
    $("#lb").text($(document).scrollTop());
})
<span id="lb" style="top:100px;left:100px;position:fixed;"></span><!--一个固定的span标记 滚动时方便查看-->
Javascript 相关文章推荐
js螺旋动画效果的具体实例
Nov 15 Javascript
使用jquery+CSS实现控制打印样式
Dec 31 Javascript
jQuery实现鼠标滑过点击事件音效试听
Aug 31 Javascript
jquery实现初次打开有动画效果的网页TAB切换代码
Sep 06 Javascript
Bootstrap Table使用方法解析
Oct 19 Javascript
原生js实现新闻列表展开/收起全文功能
Jan 20 Javascript
jQuery基于ajax实现页面加载后检查用户登录状态的方法
Feb 10 Javascript
动手写一个angular版本的Message组件的方法
Dec 16 Javascript
详解关于element el-button使用$attrs的一个注意要点
Nov 09 Javascript
vue改变对象或数组时的刷新机制的方法总结
Apr 24 Javascript
vue history 模式打包部署在域名的二级目录的配置指南
Jul 02 Javascript
用javascript实现倒计时效果
Feb 09 Javascript
javascript移出节点removeChild()使用介绍
Apr 03 #Javascript
javascript 拷贝节点cloneNode()使用介绍
Apr 03 #Javascript
javascript替换已有元素replaceChild()使用介绍
Apr 03 #Javascript
Extjs grid添加一个图片状态或者按钮的方法
Apr 03 #Javascript
ExtJS 刷新后如何默认选中刷新前最后一次选中的节点
Apr 03 #Javascript
单击和双击事件的冲突处理示例代码
Apr 03 #Javascript
在jquery boxy中添加百度地图坐标拾取注意流程
Apr 03 #Javascript
You might like
使用VisualStudio开发php的图文设置方法
2010/08/21 PHP
PHP运行模式的深入理解
2013/06/03 PHP
php使用数组填充下拉列表框的方法
2015/03/31 PHP
ThinkPHP控制器详解
2015/07/27 PHP
jQuery EasyUI 开源插件套装 完全替代ExtJS
2010/03/24 Javascript
js获取URL的参数的方法(getQueryString)示例
2013/09/29 Javascript
js几秒以后倒计时跳转示例
2013/12/26 Javascript
JavaScript实现自动弹出窗口并自动关闭窗口的方法
2015/08/06 Javascript
使用CoffeeScrip优美方式编写javascript代码
2015/10/28 Javascript
实例详解jQuery表单验证插件validate
2016/01/18 Javascript
分享一个原生的JavaScript拖动方法
2016/09/25 Javascript
基于node.js依赖express解析post请求四种数据格式
2017/02/13 Javascript
基于vue2.0+vuex的日期选择组件功能实现
2017/03/13 Javascript
详解打造 Vue.js 可复用组件
2017/03/24 Javascript
javascript checkbox/radio onchange不能兼容ie8处理办法
2017/06/13 Javascript
js+html获取系统当前时间
2017/11/10 Javascript
vue v-model实现自定义样式多选与单选功能
2018/07/05 Javascript
详解swiper在vue中的应用(以3.0为例)
2018/09/20 Javascript
vue+express+jwt持久化登录的方法
2019/06/14 Javascript
通过循环优化 JavaScript 程序
2019/06/24 Javascript
解决vue打包后vendor.js文件过大问题
2019/07/03 Javascript
JS自定义右键菜单实现代码解析
2020/07/16 Javascript
详解如何使用React Hooks请求数据并渲染
2020/10/18 Javascript
vue实现简单的登录弹出框
2020/10/26 Javascript
Python对象体系深入分析
2014/10/28 Python
使用Python脚本生成随机IP的简单方法
2015/07/30 Python
解决python读取几千万行的大表内存问题
2018/06/26 Python
基于Python计算圆周率pi代码实例
2020/03/25 Python
CSS实现进度条和订单进度条的示例
2020/11/05 HTML / CSS
日本最新流行服饰网购:Nissen
2016/07/24 全球购物
德国PC硬件网站:CASEKING
2016/10/20 全球购物
阿联酋网上花店:Ferns N Petals
2018/02/14 全球购物
世界上最大的字体市场:MyFonts
2020/01/10 全球购物
如何利用find命令查找文件
2015/02/07 面试题
向女朋友道歉的话
2015/01/20 职场文书
golang 定时任务方面time.Sleep和time.Tick的优劣对比分析
2021/05/05 Golang