jquery.ajaxdatalazy.js 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. (function($) {
  2. var pageNo = 1; //延迟加载翻页,默认设为第 1 页
  3. $.fn.lazyinit = function(options){
  4. var dataContainer = $(this);
  5. //实现好友动态分页
  6. $(this).find('.pagination').find('.demo').on('click',function(){
  7. var url = $(this).attr('ds_url');
  8. $(dataContainer).lazyshow({url:url,iIntervalId:true});
  9. });
  10. $(this).find('.lazymore').find('a').on('click',function(){
  11. var url = $(this).attr('ds_url');
  12. $(dataContainer).lazyshow({url:url,iIntervalId:false});
  13. });
  14. }
  15. $.fn.lazyshow = function(options) {
  16. var settings = {
  17. iIntervalId:true
  18. };
  19. //异步加载的页面url
  20. var loadurl = options.url;
  21. //初始化时
  22. settings.iIntervalId = options.iIntervalId;
  23. //列表容器
  24. var dataContainer = $(this);
  25. //如果临时列表模块不存在,则追加一个该模块
  26. if(!$(dataContainer).next("#lazytmp")[0]){
  27. $(dataContainer).after('<div id="lazytmp"></div>');
  28. }
  29. //初始化时延时分页为1
  30. if(settings.iIntervalId){
  31. pageNo = 1;
  32. }
  33. //删除加载更多的连接
  34. $("#lazymore").remove();
  35. //加载好友动态
  36. $("#lazytmp").load(loadurl+'&delaypage='+pageNo,'',function(){
  37. //获取load的html追加到列表中,同时清除临时列表
  38. var html = '';
  39. html += $("#lazymodule").html();
  40. if(settings.iIntervalId === false){
  41. $(dataContainer).append(html);
  42. }else{
  43. $(dataContainer).html(html);
  44. }
  45. $("#lazytmp").html('');
  46. //修改加载更多的html
  47. $(dataContainer).find("#lazymore").html('<div class="lazymore"><a href="javascript:void(0);" ds_url="'+loadurl+'">查看更多动态</a></div>');
  48. //修改分页连接为onclick事件
  49. $(dataContainer).find('.pagination').find('.demo').each(function(){
  50. var a_url = $(this).attr('href');
  51. if(a_url != '' && a_url != undefined){
  52. $(this).attr('ds_url',a_url);
  53. }
  54. $(this).attr('href','javascript:void(0);');
  55. });
  56. // Membership card
  57. $(dataContainer).find('[dstype="mcard"]').membershipCard({type:'shop'});
  58. });
  59. pageNo++;//延时分页自增一
  60. };
  61. })(jQuery);