第一种情况:单个div滚动

HTML

<body>
<!-- search start -->
<div class="search" #if($m_o_d_e == "nightmode") style="background: #2e2e2e;" #end>
<a onclick="firstSearch()"><b></b>搜索</a>
</div> <a href="javascript:;" class="moveTop" id="movetop"></a>
<div class="domainBook">
<div class="domainNav swiper-container">
<ul class="swiper-wrapper">
<li>左侧导航<li>
li>左侧导航<li>
li>左侧导航<li>
</ul>
</div>
<div class="domainCon slideHeight">
<!--滚动div-->
<div class="groupM autoHeight">
<ul id="subjectUl"></ul>
<div class="pullUp" id="btu"></div>
</div> </div>
</div> </body>

Javascript

$("document").ready(function(){

    //滚动监听事件
$(".slideHeight").scroll(function(){
var nScrollHight = $(this)[0].scrollHeight;
var nScrollTop = $(this)[0].scrollTop;
var nDivHight = $(".slideHeight").height(); if(nScrollTop + nDivHight >= nScrollHight){
$("#btu").html('<span class="pullUpIcon"></span>正在加载...');
getMore(channelId); //AJAX加载数据(到subjectUl)
} });

第二种情况:整个页面滚动

HTML

<body>
<a href="javascript:;" class="moveTop" id="movetop"></a>
<!--滚动部分start-->
<div class="groupM slideHeight">
<ul id="subjectUl"></ul>
<div class="pullUp" id="btu"></div>
</div> </body>

Javascript

$(function(){
//滚动监听事件
$(window).scroll(
function () {
/*当前滚动条到顶部的距离*/
var top = $(document).scrollTop();
/*当前浏览器的可视高度*/
var height = document.body.clientHeight;
/*当前网页(body)的高度*/
var z_height = $(document).height();
/*判断(网页的body高度减去当前浏览器的可视高度是否等于滚动条到顶部的距离)
* 相等:则判定当前页面在底部
* 不相等:判定当前页面不在底部
* */
var stats = ( z_height - height-top == 0) ;
if (stats) {
/*当前网页在最底部,执行该函数*/
$("#btu").html('<span class="pullUpIcon"></span>正在加载...');
More();//AJXA异步加载数据(到subjectUl)
}
}
); })

Ajax 滚动异步加载数据的更多相关文章

  1. js滚动异步加载数据的思路

    <body> <div style="width:200px; height:1000px; border:1px solid red;" id="to ...

  2. 向上滚动或者向下滚动分页异步加载数据(Ajax + lazyload)[上拉加载组件]

    /**** desc : 分页异步获取列表数据,页面向上滚动时候加载前面页码,向下滚动时加载后面页码 ajaxdata_url ajax异步的URL 如data.php page_val_name a ...

  3. 淘宝购物车页面 智能搜索框Ajax异步加载数据

    如果有朋友对本篇文章的一些知识点不了解的话,可以先阅读此篇文章.在这篇文章中,我大概介绍了一下构建淘宝购物车页面需要的基础知识. 这篇文章主要探讨的是智能搜索框Ajax异步加载数据.jQuery的社区 ...

  4. js中对arry数组的各种操作小结 瀑布流AJAX无刷新加载数据列表--当页面滚动到Id时再继续加载数据 web前端url传递值 js加密解密 HTML中让表单input等文本框为只读不可编辑的方法 js监听用户的键盘敲击事件,兼容各大主流浏览器 HTML特殊字符

    js中对arry数组的各种操作小结   最近工作比较轻松,于是就花时间从头到尾的对js进行了详细的学习和复习,在看书的过程中,发现自己平时在做项目的过程中有很多地方想得不过全面,写的不够合理,所以说啊 ...

  5. Jquery zTree结合Asp.net实现异步加载数据

    zTree结合Asp.net实现异步加载数据 实现简单操作 zTree 下载 api 访问 :http://www.ztree.me/v3/main.php 例子中用到json数据转化 newtons ...

  6. 新手教程:不写JS,在MIP页中实现异步加载数据

    从需求谈起:在 MIP 页中异步加载数据 MIP(移动网页加速器) 的 加速原理 除了靠谱的 MIP-Cache CDN 加速外,最值得一提的就是组件系统.所有 JS 交互都需要使用 MIP 组件实现 ...

  7. iScroll.js 向上滑动异步加载数据回弹问题

    iScroll是一款用于移动设备web开发的一款插件.像缩放.下拉刷新.滑动切换等移动应用上常见的一些效果都可以轻松实现. 现在最新版本是5.X,官网这里:http://iscrolljs.com/ ...

  8. highcharts.js两种数据绑定方式和异步加载数据的使用

    一,我们先来看看异步加载数据的写法(这是使用MVC的例子) 1>js写法 <script src="~/Scripts/jquery-2.1.4.min.js"> ...

  9. ajax按楼层加载数据

    代码如下: <!doctype html> <html> <head> <meta charset="utf-8"> <tit ...

随机推荐

  1. _tkinter.TclError: image "pyimage1" doesn't exist 解决办法

    _tkinter.TclError: image "pyimage1" doesn't exist 解决办法 1 def logout(self): 2 login.LoginWi ...

  2. Vue2.5开发去哪儿网App 第四章笔记 下

    1.解决非父子组件之间的传值问题 非父子组件传值(Bus/总线/发布订阅模式/观察者模式) 给 Vue类上挂在一个属性,然后创建vue实例时,实例就拥有了这个属性 Vue.prototype.bus ...

  3. Eclipse安装ModelGoon控件(ModelGoon控件反向生成UML)

    Eclipse安装ModelGoon 1 下载ModelGoon到本地,放在eclipse的安装目录下 2 打开Eclipse,点击Help,选择Install new software 3 点击ad ...

  4. Elasticsearch 5.X 使用 Docker 运行使用 Head 插件

    ES 5.X 版本后就不支持 elasticsearch-head  以插件方式来安装了. for Elasticsearch 5.x: site plugins are not supported. ...

  5. Spring的JavaMail实现异步发送邮件

    具体背景就不说了,可以网上搜索相关知识,或者直接看Sping MailSender的官坊网页.这里就直接实战了(Java实现异步发送电子邮件,包含中文无乱码). Maven: <dependen ...

  6. TensorFlow object detection API应用--配置

    目标检测在图形识别的基础上有了更进一步的应用,但是代码也更加繁琐,TensorFlow专门为此开设了一个object detection API,接下来看看怎么使用它. object detectio ...

  7. C++版Hello World

    代码 #include <iostream> using namespace std; int main() { cout << ; } 开头那两句代码 暂时先记住吧 #inc ...

  8. [Python学习笔记-001] 内置函数getattr()

    如果某个实例foo有多个方法, 当对foo的每一个方法我们都需要使用try ... except ...进行包装的时候,内置函数getattr()可以用来精简代码. 1. getattr()的用法 # ...

  9. JavaScrip t对象和 JSON 数据格式转换

    <script> //定义一个js对象 var person = { firstName: "John", lastName: "Doe", age ...

  10. NHibernate 有好几种数据库查询方式

    NHibernate 有好几种数据库查询方式 1.原生SQL var employeeQuery = Database.Session .CreateSQLQuery("select * f ...