jQuery ScrollPagination 自动增加分页及重复加载问题
2014-07-06 15:32
417 查看
一、当第一次未加载完时会出现重复加载的情况。我的解决办法时加了个startScrollPagination;在beforeLoad和afterLoad中配合作用stopScrollPagination和startScrollPagination;
二、分页问题搞了很久,开始打算定义个全局变量或搞个hidden input来配合contentData使用,都没能成功,最终直接修改源代码解决问题;
二、分页问题搞了很久,开始打算定义个全局变量或搞个hidden input来配合contentData使用,都没能成功,最终直接修改源代码解决问题;
/* ** Anderson Ferminiano ** contato@andersonferminiano.com -- feel free to contact me for bugs or new implementations. ** jQuery ScrollPagination ** 28th/March/2011 ** http://andersonferminiano.com/jqueryscrollpagination/ ** You may use this script for free, but keep my credits. ** Thank you. */ (function( $ ){ $.fn.scrollPagination = function(options) { var opts = $.extend($.fn.scrollPagination.defaults, options); var target = opts.scrollTarget; if (target == null){ target = obj; } opts.scrollTarget = target; return this.each(function() { $.fn.scrollPagination.init($(this), opts); }); }; $.fn.stopScrollPagination = function(){ return this.each(function() { $(this).attr('scrollPagination', 'disabled'); }); }; $.fn.startScrollPagination = function(){ return this.each(function() { $(this).attr('scrollPagination', 'enabled'); }); }; $.fn.scrollPagination.loadContent = function(obj, opts){ var target = opts.scrollTarget; var mayLoadContent = $(target).scrollTop()+opts.heightOffset >= $(document).height() - $(target).height(); if (mayLoadContent){ if (opts.beforeLoad != null){ opts.beforeLoad(); } $(obj).children().attr('rel', 'loaded'); opts.contentData.page = $(obj).attr('nextPage'); // Add $.ajax({ type: 'POST', url: opts.contentPage, data: opts.contentData, success: function(data){ $(obj).append(data); var objectsRendered = $(obj).children('[rel!=loaded]'); $(obj).attr('nextPage', Number($(obj).attr('nextPage')) + 1); // Add if (opts.afterLoad != null){ opts.afterLoad(objectsRendered); } }, dataType: 'html' }); } }; $.fn.scrollPagination.init = function(obj, opts){ var target = opts.scrollTarget; $(obj).attr('scrollPagination', 'enabled'); $(obj).attr('nextPage', opts.nextPage); // Add $(target).scroll(function(event){ if ($(obj).attr('scrollPagination') == 'enabled'){ $.fn.scrollPagination.loadContent(obj, opts); } else { event.stopPropagation(); } }); $.fn.scrollPagination.loadContent(obj, opts); }; $.fn.scrollPagination.defaults = { 'contentPage' : null, 'contentData' : {}, 'nextPage' : 2, // Add 'beforeLoad': null, 'afterLoad': null , 'scrollTarget': null, 'heightOffset': 0 }; })( jQuery );
相关文章推荐
- ListView设置滑动到底部自动加载 重复多次加载问题
- iOS不得姐项目--推荐关注模块(一个控制器控制两个tableView),数据重复请求的问题,分页数据的加载,上拉下拉刷新(MJRefresh)
- android-分页加载ListView 点击Item获取对象数据及ArrayList重复及乱序问题
- scroll pagination.js数据重复加载、分页问题
- SSH+Ext左侧tree右侧grid,点击左侧tree节点右侧grid数据动态加载和分页问题
- 视频解码器和render之间增加一个内容透传的filter,需要处理颜色空间的差异及显卡内存自动对齐问题
- Flex用HTTPService时加载xml或其它数据不自动刷新问题的解决方案
- 在smarty中增加类似foreach的功能自动加载数据
- 用Extjs实现分页自动加载数据的Ajax实现
- Hibernate分页功能数据重复问题
- 解决FlexPaper分页分段加载问题
- 【求助】Vs2005当前不能命中断点 自动加载用户控件问题【找到部分原因】
- zTree 异步加载 添加子节点重复问题
- 【转载】解决FlexPaper分页分段加载问题
- windbg调试多个CLR runtime dump文件,自动加载最新版mscordacwks.dll 的问题
- ROW_NUMBER() OVER (ORDER BY OrderConfirmTime DESC) 中, 如果OrderConfirmTime不唯一, 会造成分页中的数据重复问题.
- MyEclipse 6.0下tomcat自动加载变动过的servlet问题
- dedeCMS采集修改,增加:分页采集的自动替换分页标记
- tomcat自动加载问题(转)