jQuery.lazyload+masonry改良图片瀑布流代码


Posted in Javascript onJune 20, 2014

实现方法如下:(这里只发jquery了,相关html代码请各位自己脑补一下吧,我就不发了,哈哈)

/**
 * 自动刷新
 * @type {*|jQuery|HTMLElement}
 */
var $container = $('#main');
$container.imagesLoaded( function(){
  $container.masonry({
    itemSelector : '.item',
    columnWidth:205,
    gutterWidth:10,
    isAnimated: true
  });
});
var pre_href;
//滚动
$(window).scroll(function(){
  // 当滚动到最底部以上100像素时, 加载新内容
  if ($(document).height() - $(this).scrollTop() - $(this).height()<100) {
    ajax_load_data();
  }
});
 
function ajax_load_data(){
  var href = $('#page-nav').find('.nextprev').attr('href');
  if(href && href != pre_href){
    console.log('href = '+href);
    pre_href = href;
 
    $.ajax({
      url:href,//获取元素列表的地址
      data:{'act':'ajax_wap_index'},
      dataType:'json',
      type:'post',
      beforeSend:function(){
        show_loading_body();
      },
      complete:function(){
        show_loading_body();
      },
      success:function(data){
        if(data.status != undefined && data.status == 'ok'){
          if(data.html){
            var $boxes = $( data.html );
            $container.append( $boxes ).masonry("appended", $boxes, true);//追加元素
            $container.imagesLoaded(function () {
              $container.masonry();
            });//加载完图片后,会实现自动重新排列。【这里是重点】
          }
 
          if(data.str_pages){
            $('#page-nav').html(data.str_pages);//设置下一个分页的地址。【可以自己补充】
          }
        }
      }
    });
  }
}
Javascript 相关文章推荐
一个很酷的拖动层的js类,兼容IE及Firefox
Jun 23 Javascript
游览器中javascript的执行过程(图文)
May 20 Javascript
利用javascript实现web页面中指定区域打印
Oct 30 Javascript
JS 操作Array数组的方法及属性实例解析
Jan 08 Javascript
jQuery实现的简单百分比进度条效果示例
Aug 01 Javascript
jQuery Mobile和HTML5开发App推广注册页
Nov 07 Javascript
JS鼠标滚动分页效果示例
Jul 05 Javascript
原生JS实现$.param() 函数的方法
Aug 10 Javascript
解决vue语法会有延迟加载显现{{xxx}}的问题
Nov 14 Javascript
使用webpack/gulp构建TypeScript项目的方法示例
Dec 18 Javascript
js 获取本周、上周、本月、上月、本季度、上季度的开始结束日期
Feb 01 Javascript
vue数据响应式原理知识点总结
Feb 16 Javascript
Node.js实现简单聊天服务器
Jun 20 #Javascript
SuperSlide2实现图片滚动特效
Jun 20 #Javascript
javascript实现十六进制颜色值(HEX)和RGB格式相互转换
Jun 20 #Javascript
js常用数组操作方法简明总结
Jun 20 #Javascript
JS实现闪动的title消息提醒效果
Jun 20 #Javascript
jquery操作checked属性以及disabled属性的多种方法
Jun 20 #Javascript
jquery弹窗插件colorbox绑定动态生成元素的方法
Jun 20 #Javascript
You might like
PHPWind 发帖回帖Api PHP版打包下载
2010/02/08 PHP
PHP修改session_id示例代码
2014/01/08 PHP
php字符串替换函数substr_replace()用法实例
2015/03/17 PHP
PHP超全局数组(Superglobals)介绍
2015/07/01 PHP
PHP中子类重载父类的方法【parent::方法名】
2016/05/06 PHP
实例讲解php将字符串输出到HTML
2019/01/27 PHP
PHP面向对象程序设计之构造方法和析构方法详解
2019/06/13 PHP
基于jQuery选择器的整理集合
2013/04/26 Javascript
GridView中获取被点击行中的DropDownList和TextBox中的值
2013/07/18 Javascript
javascript跨域的4种方法和原理详解
2014/04/08 Javascript
移动端JQ插件hammer使用详解
2015/07/03 Javascript
AngularJS Bootstrap详细介绍及实例代码
2016/07/28 Javascript
深入浅出 jQuery中的事件机制
2016/08/23 Javascript
vue中路由验证和相应拦截的使用详解
2017/12/13 Javascript
微信小程序实现文字跑马灯效果
2020/05/26 Javascript
Angular 数据请求的实现方法
2018/05/07 Javascript
基于vue和react的spa进行按需加载的实现方法
2018/09/29 Javascript
JavaScript实现连连看连线算法
2019/01/05 Javascript
小程序中this.setData的使用和注意事项
2019/08/28 Javascript
微信小程序纯文本实现@功能
2020/04/08 Javascript
[55:03]LGD vs EG 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/18 DOTA
[55:44]OG vs NAVI 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
python用match()函数爬数据方法详解
2019/07/23 Python
python 列表、字典和集合的添加和删除操作
2019/12/16 Python
Python namedtuple命名元组实现过程解析
2020/01/08 Python
Python3使用腾讯云文字识别(腾讯OCR)提取图片中的文字内容实例详解
2020/02/18 Python
借助HTML5 Canvas来绘制三角形和矩形等多边形的方法
2016/03/14 HTML / CSS
html5教程画矩形代码分享
2013/12/04 HTML / CSS
建筑实习自我鉴定
2013/10/18 职场文书
英文简历自荐信范文
2013/12/11 职场文书
单位单身证明样本
2014/10/11 职场文书
打架检讨书范文
2015/01/27 职场文书
旷课检讨书范文
2015/01/27 职场文书
公司职员入党自传书
2015/06/26 职场文书
python 自动刷新网页的两种方法
2021/04/20 Python
mysql 获取时间方式
2022/03/20 MySQL