`
yangpanwww
  • 浏览: 626818 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

jQuery 拉动滚动条到底部加载数据

 
阅读更多

代码很简单:

 

 <div id="assDiv" style="height: 350px;overflow-y: auto;" >

</div>

 

    

/**  
    		  * 判断滚动条是否到最底端的方法 
    		  * @param Element obj 
    		  */    		
    		function isScrollBottom(obj) {
				if (obj.scrollTop + obj.clientHeight === obj.scrollHeight) {
					return true;
				} else {
					return false;
				}
			}
			
			$(function(){
				/**
				  *绑定滚动事件
				  */
				$('#assDiv').scroll(function(e) {
					if (isScrollBottom(this)) {
							// 滚动到底端了TODO加载内容
							ajaxShow();
						} else {
							// 没有滚动到底端TODO 其他处理
						}		
				});
			});

 

例子:

 

信息显示类别代码:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8" contentType="text/html; charset=UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%> 
<%
	String path = request.getContextPath();
%>


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
	<head>
	    <meta http-equiv="pragma" content="no-cache"/>
	    <meta http-equiv="cache-control" content="no-cache"/>
	    <meta http-equiv="expires" content="0"/>
		<link href="<%=path %>/style/base/admin_style.css" rel="stylesheet" type="text/css" />
    	<link rel="stylesheet" href="<%=path %>/style/common/lightbox.css" type="text/css"></link>
    	<script type="text/javascript" src="<%=path %>/style/common/jquery-1.7.min.js"></script>
    	<script type="text/javascript">
    		/**  
    		  * 判断滚动条是否到最底端的方法 
    		  * @param Element obj 
    		  */    		
    		function isScrollBottom(obj) {
				if (obj.scrollTop + obj.clientHeight === obj.scrollHeight) {
					return true;
				} else {
					return false;
				}
			}
			
			$(function(){
				/**
				  *绑定滚动事件
				  */
				$('#assDiv').scroll(function(e) {
					if (isScrollBottom(this)) {
							// 滚动到底端了TODO加载内容
							ajaxShow();
						} else {
							// 没有滚动到底端TODO 其他处理
						}		
				});
			});
			
			function ajaxShow(){
				var currPage = $("#currPage").val();
				var pageCount = $("#pageCount").val(); 
				//下一页 小于 总页数的时候,查询数据
				if(currPage <=  pageCount){
					 $.post("<%=path %>/cxtj/cxtj_scrollAssList.action",$("#editForm").serialize(),function(result){
						 if(result.length > 1){
						 	var jsonData = eval('(' + result + ')');
						 	var currPage = jsonData.currPage;
						 	//保持当前页
						 	$("#currPage").val(currPage);
						 	
						 	var assArry = jsonData.data;
						 	$.each(assArry,function(key,obj){
						 		var len = $("#assTable tr:not(:first)").length;
								var tr = '<tr>';   
									tr += '<td height="24" align="center" bgcolor="#FFFFFF">'+parseInt(len+1)+'</td>';
									tr += '<td bgcolor="#FFFFFF">'+obj.assNo+'</td>';
									tr += '<td bgcolor="#FFFFFF">'+obj.assName+'</td>';
									tr += '<td bgcolor="#FFFFFF">'+obj.assModel+'</td>';
									tr += '<td bgcolor="#FFFFFF" align="center">'+obj.zcfl+'</td>';
									tr += '<td bgcolor="#FFFFFF" align="center">'+obj.departmentnoName+'</td>';
									tr += '<td bgcolor="#FFFFFF">¥'+obj.assValue+'</td>';
									tr += '<td bgcolor="#FFFFFF" align="center">'+obj.assUsedate+'</td>';
									tr += "</tr>";
								$(tr).insertAfter($("#assTable tr:last"));
							});
						 }
					});
				}
			}
    		
    	</script>
		 
	</head>
	<body><!-- 保存查询的字段信息以及分页信息 -->
		 <s:form id="editForm" name="editForm" namespace="/cxtj" action="cxtj_scrollAssList" method="post"  >
			 <input type="hidden" name="ass.assNo" value="<s:property value="ass.assNo" />" />
			 <input type="hidden" name="ass.assName" value="<s:property value="ass.assName" />" />
			 <input type="hidden" name="ass.assModel" value="<s:property value="ass.assModel" />" />
			 <input type="hidden" name="ass.by2" value="<s:property value="ass.by2" />" />
			 <input type="hidden" name="ass.userDepartmentno" value="<s:property value="ass.userDepartmentno" />" />
			 <input type="hidden" id="currPage" name="currPage" value="1" />
			 <input type="hidden" id="pageCount"  value="<s:property value="#request.pageBean.pageCount" />" />
		 </s:form> 
		 <div id="assDiv" style="height: 350px;overflow-y: auto;" >
		 	<table id="assTable" width="100%" border="0" cellspacing="1" cellpadding="0" class="D_table">
					<tr>
						<th width="30px">序号</th>
						<th >条形码</th>
						<th>资产名称</th>
						<th>规格型号</th>
						<th width="100px">资产分类</th>
						<th >使用科室</th>
						<th width="85px">资产原值</th>
						<th width="80px">购置日期</th>
					</tr>
					 <s:iterator var="item" value="#request.list" status="sts">
						<tr>
							<td height="24" align="center" bgcolor="#FFFFFF">
								<s:property value="#sts.index+1"/>
							</td>
							<td  bgcolor="#FFFFFF">
								<s:property value="#item.assNo"/>
							</td>
							<td bgcolor="#FFFFFF">
								<s:property value="#item.assName"/>
							</td>
							<td bgcolor="#FFFFFF">
								<s:property value="#item.assModel"/>
							</td>
							<td  bgcolor="#FFFFFF" align="center">
								<s:property value="#item.zcfl"/>
							</td>
							<td  bgcolor="#FFFFFF" align="center">
								<s:property value="#item.departmentnoName"/>
							</td>
							<td bgcolor="#FFFFFF" >
								<fmt:formatNumber value="${assValue}" pattern="¥0.00"></fmt:formatNumber> 
							</td>
							<td bgcolor="#FFFFFF" align="center">
								<s:date name="#item.assUsedate" format="yyyy-MM-dd"/>
							</td>
						</tr>
					</s:iterator>
				</table>
		 </div>	
	</body>
</html>

 

分享到:
评论

相关推荐

    jQuery实现当拉动滚动条到底部加载数据的方法分析

    本文实例讲述了jQuery实现当拉动滚动条到底部加载数据的方法。分享给大家供大家参考,具体如下: 滚动条到底部加载数据原理很简单,就是为window或者滚动元素添加一个scroll事件,浏览器每次触发scroll事件时判断...

    js/jquery控制页面动态加载数据 滑动滚动条自动加载事件的方法

    下面的代码主要是控制滚动条下拉时的加载事件的 在下面代码说明出,写上你的操作即可,无论是加载图片还是加载记录数据 都可以  别忘了引用jquery类库 $(window).scroll(function () { var scrollTop = $(this)....

    拉动滚动条加载数据的jquery代码

    标题中的"拉动滚动条加载数据的jquery代码"指的是在网页中实现无限滚动或者叫滚动加载(Lazy Loading)的一种技术,这种技术通常用于提高用户体验,尤其是处理大数据量时,避免一次性加载所有内容导致页面加载速度变...

    jquery图片横向滚动

    为了添加横向滚动条,可以使用jQuery UI库中的`slider`组件。确保先引入jQuery UI库,然后创建一个滚动条元素,并绑定滑动事件: ```html &lt;link rel="stylesheet" href="https://code.jquery....

    jquery滚动加载数据的方法

    我们浏览有些网页的时候,当拉动浏览器的滚动条时到页底时,页面会继续自动加载更多内容供用户浏览。这种技术我暂且称它为滚屏加载技术,我们发现很多网站用到这种技术,例如新浪微博、QQ空间等。 代码如下: 代码...

    jQuery滚屏加载_Ajax滚屏加载

    我们经常会看到拉动滚动条时到页底时,页面会继续加载更多内容。这种技术我暂且称它为jQuery+Ajax无刷新滚屏加载技术。我们发现图片搜索、新浪微博、QQ空间等将该技术应用得淋漓尽致。 若是想看该网页特效教程 ...

    下拉刷新,上拉加载,JqueryMobile1.4.3+iScroll4

    它可以替代原生的浏览器滚动条,提供更佳的滚动体验,包括平滑滚动、弹性回弹等效果。iScroll 4是其一个经典版本,兼容多种浏览器,并且支持下拉刷新和上拉加载功能。 **下拉刷新** 下拉刷新功能让用户在顶部向下...

    使用jQuery或者原生js实现鼠标滚动加载页面新数据

    下面的代码主要是控制滚动条下拉时的加载事件的,无论是加载图片还是加载记录数据 都可以。 加载jQuery库后我们可以这样使用:  $(window).scroll(function () { var scrollTop = $(this).scrollTop(); var ...

    jQuery可拉动水平刻度时间轴特效.zip

    jQuery可拉动水平刻度时间轴特效是一个在网页中实现动态时间轴展示的代码库,它基于流行的JavaScript库jQuery和CSS样式来创建交互式的时间线效果。这个特效代码可以帮助开发者轻松地构建一个用户可以手动拖动浏览的...

    jQuery Datatables表头不对齐的解决办法

    2. **固定宽度并考虑滚动条**:如果表格有横向滚动条,我们需要考虑到滚动条占据的空间。这时,可以设置一个固定的表格宽度,以确保在显示滚动条时表头与内容仍然对齐。例如: ```css #example { width: 1000px !...

    jQuery移动端选项卡内容加载代码.zip

    同样,通过监听滚动事件`$(window).scroll()`,当滚动条到达页面底部时,触发加载新内容的函数。在设计时需考虑如何平滑地插入新内容,避免页面跳动,以及何时停止加载,防止无限循环。 4. **优化性能**: 在移动...

    Jquery实现评论内容上下滑动切换效果实例源码

    为了提高用户体验,我们可以添加预加载功能,即在用户滚动到接近底部时,提前加载下一批评论。这可以通过监测滚动位置和容器高度来实现,当达到一定阈值时,使用Ajax异步加载新数据。 7. **响应式设计**: 对于...

    滚动表格

    滚动表格通常用于处理大量数据,当数据无法一次性完全展示时,用户可以通过滚动条查看所有信息。这个技术在现代网页设计中非常常见,尤其在数据密集型应用中,如报表、数据分析和管理界面。 描述中提到的博文链接...

    页面滚动分页---iScroll实例:下拉刷新,滚动翻页

    同时,还可以通过调整配置项来优化滚动性能,例如设置`scrollbars`控制滚动条的显示,设置`mouseWheel`控制鼠标滚轮的滚动行为。 5. **与后端交互**:在实际应用中,下拉刷新和滚动分页通常需要与后端API进行通信,...

    jQuery手势控制,下拉刷新

    这通常通过比较滚动条的位置和之前的位置来实现。如果用户是向下滚动,且滚动的距离超过一定阈值,那么我们可以认为用户正在进行下拉操作。 3. **显示加载指示器**:当检测到下拉动作后,为了给用户反馈,我们可以...

    sliderRefresh:拉动刷新加载数据

    2. **计算滚动位置**:在`handleScroll`函数中,获取滚动条的位置,如`window.pageYOffset`或`document.documentElement.scrollTop`。 3. **判断触发条件**:设定一个阈值,当滚动到页面顶部(或指定位置)时,触发...

    上拉 下拉 刷新加载

    同时,为了提供友好的用户体验,我们还需要添加一些视觉反馈,如加载指示器,这通常是一个旋转的菊花图标,表示数据正在加载。 JavaScript部分的关键在于正确监听滚动事件。在浏览器中,我们可以使用`window....

    仿excel表格,固定一列可拉动

    当内容超过容器宽度时,会出现水平滚动条,允许用户浏览更多数据。为了提供更流畅的体验,可以结合使用JavaScript和CSS的`transition`属性实现平滑滚动效果。 4. **竖向拖动**:虽然标题提到“稍微修改下布局也可以...

Global site tag (gtag.js) - Google Analytics