ASP.NET MVC3 利用滚动条加载数据
2015-06-07 16:46
639 查看
滚动条加载数据是当前比较流行的分页方式。
操作方式:根据滚动条的当前位置来加载更多的数据。
主要有2种形式。
1:边滚动边加载数据,一开始把容器的高度计算好,当滚动条移动到空白位置时加载更多的数据。类似于 http://qing.blog.sina.com.cn/tag/%E6%97%B6%E5%B0%9A
2:滚动到底部加载数据,当滚动条移动到底部时加载更多的数据。类似于“百度图片”的效果。
它的优点:可以利用滚轮进行分页,而不需要点击按钮,方便用户快速地浏览完整的信息,不用经常点击分页按钮。在手机端的效果特别明显。
它的缺点:对于想快速查看某些数据时不是很方便,假如用户想查看靠后的数据时,需要先加载前面的所有数据才能找到想要的数据。
实现方式:利用 ASP.NET MVC + Jquery 框架比较容易实现这种效果(由于本人最近都没有使用 WEBFORM ,比较生疏,就不拿出来献丑)
已滚动到底部加载数据为例子说明,这个实现起来比较容易。
html 部分,div : Container 控制滚动条的容器,div : DataList 加载数据的容器。 Container 需要 加上 height: 420px;overflow-y: auto; 样式
JS 部分,主要是针对 Container容器的滚动条进行操作,判断是否去掉底部。
可使用 $("#Container")[0].scrollTop + $("#Container").height() >= $("#Container")[0].scrollHeight - 10,关于这几个属性的详细说明请自行在网络上查看,
需要说明的是 -10 主要是为了兼容chrome 浏览器,不同浏览器对滚动条的属性解析会不同,如果列表样式过于复杂,需要反复调试。
View
Code
服务器端 部分,主要是利用 linq 强大的 OrderByDescending,skip 和 take 方法,把已经加载过的数据过滤掉。
下载源码
操作方式:根据滚动条的当前位置来加载更多的数据。
主要有2种形式。
1:边滚动边加载数据,一开始把容器的高度计算好,当滚动条移动到空白位置时加载更多的数据。类似于 http://qing.blog.sina.com.cn/tag/%E6%97%B6%E5%B0%9A
2:滚动到底部加载数据,当滚动条移动到底部时加载更多的数据。类似于“百度图片”的效果。
它的优点:可以利用滚轮进行分页,而不需要点击按钮,方便用户快速地浏览完整的信息,不用经常点击分页按钮。在手机端的效果特别明显。
它的缺点:对于想快速查看某些数据时不是很方便,假如用户想查看靠后的数据时,需要先加载前面的所有数据才能找到想要的数据。
实现方式:利用 ASP.NET MVC + Jquery 框架比较容易实现这种效果(由于本人最近都没有使用 WEBFORM ,比较生疏,就不拿出来献丑)
已滚动到底部加载数据为例子说明,这个实现起来比较容易。
html 部分,div : Container 控制滚动条的容器,div : DataList 加载数据的容器。 Container 需要 加上 height: 420px;overflow-y: auto; 样式
JS 部分,主要是针对 Container容器的滚动条进行操作,判断是否去掉底部。
可使用 $("#Container")[0].scrollTop + $("#Container").height() >= $("#Container")[0].scrollHeight - 10,关于这几个属性的详细说明请自行在网络上查看,
需要说明的是 -10 主要是为了兼容chrome 浏览器,不同浏览器对滚动条的属性解析会不同,如果列表样式过于复杂,需要反复调试。
View
Code
服务器端 部分,主要是利用 linq 强大的 OrderByDescending,skip 和 take 方法,把已经加载过的数据过滤掉。
下载源码
相关文章推荐
- IoC容器Autofac(4) - Autofact + Asp.net MVC + EF Code First(附源码)
- ASP.NET:在一般处理程序中通过 Session 保存验证码却无法显示图片?
- Win8操作系统下IIS如何配置asp.net的运行环境
- ASP.NET检测到不安全 Request.Form 值解决方案汇总
- ValidationSugar表单验证框架-支持ASP.NET MVC ASP.NET WebFroM
- asp.net开发微信公众平台之验证消息的真实性
- asp.net开发微信公众平台之获取用户消息并处理
- ASP.NET完整打包卸载更新攻略(By Installshield 2010)
- ASP.NET中CKEditor与CKFinder的配置使用
- asp(Parameters) 参数化实现方法
- ASP.NET中集成百度编辑器UEditor
- asp.net实现文件无刷新上传方法汇总
- ASP.Net刷新页面后自动滚动到原来位置方法汇总
- Asp.net 2.0 无刷新图片上传 显示缩略图 具体实现
- ASP.NET方面的一些经典文章收集
- ASP.Net刷新页面后自动滚动到原来位置方法汇总
- asp.net实现文件无刷新上传方法汇总
- ASP.NET中集成百度编辑器UEditor
- ASP.NET中CKEditor与CKFinder的配置使用
- asp.net开发微信公众平台之获取用户消息并处理