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 相关文章推荐
jquery+ajax验证不通过也提交表单问题处理
Dec 12 Javascript
js实现匹配时换色的输入提示特效代码
Aug 17 Javascript
jQuery编写设置和获取颜色的插件
Jan 09 Javascript
js获取json中key所对应的value值的简单方法
Jun 17 Javascript
微信小程序实现传参数的几种方法示例
Jan 10 Javascript
详解Vue文档中几个易忽视部分的剖析
Mar 24 Javascript
angular2 组件之间通过service互相传递的实例
Sep 30 Javascript
JS/HTML5游戏常用算法之碰撞检测 包围盒检测算法详解【矩形情况】
Dec 13 Javascript
详解Vue中使用Axios拦截器
Apr 22 Javascript
js prototype和__proto__的关系是什么
Aug 23 Javascript
小程序简单两栏瀑布流效果的实现
Dec 18 Javascript
js实现html滑动图片拼图验证
Jun 24 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
Discuz 模板引擎的封装类代码
2008/07/18 PHP
采用header定义为文件然后readfile下载(隐藏下载地址)
2014/01/31 PHP
PHP封装分页函数实现文本分页和数字分页
2014/10/23 PHP
php单态设计模式(单例模式)实例
2014/11/18 PHP
php提交表单发送邮件的方法
2015/03/20 PHP
浅析Yii2 gridview实现批量删除教程
2016/04/22 PHP
解析 thinkphp 框架中的部分方法
2017/05/07 PHP
$.format,jquery.format 使用说明
2011/07/13 Javascript
nodejs入门详解(多篇文章结合)
2012/03/07 NodeJs
全屏js头像上传插件源码高清版
2016/03/29 Javascript
JS实现把鼠标放到链接上出现滚动文字的方法
2016/04/06 Javascript
jquery的checkbox,radio,select等方法小结
2016/08/30 Javascript
JS 循环li添加点击事件 (闭包的应用)
2016/12/10 Javascript
微信小程序 picker-view 组件详解及简单实例
2017/01/10 Javascript
jQuery实现搜索页面关键字的功能
2017/02/16 Javascript
JavaScript实现的搜索及高亮显示功能示例
2017/08/14 Javascript
微信小程序实现手势图案锁屏功能
2018/01/30 Javascript
解决vue-router中的query动态传参问题
2018/03/20 Javascript
three.js 制作动态二维码的示例代码
2020/07/31 Javascript
[56:17]NB vs Infamous 2019国际邀请赛淘汰赛 败者组 BO3 第三场 8.22
2019/09/05 DOTA
python遍历文件夹找出文件夹后缀为py的文件方法
2018/10/21 Python
Python实现多属性排序的方法
2018/12/05 Python
在Python中通过threshold创建mask方式
2020/02/19 Python
Pytorch对Himmelblau函数的优化详解
2020/02/29 Python
Python生成器next方法和send方法区别详解
2020/05/30 Python
在pycharm中debug 实时查看数据操作(交互式)
2020/06/09 Python
Python模拟键盘输入自动登录TGP
2020/11/27 Python
Matplotlib配色之Colormap详解
2021/01/05 Python
高中毕业生自我鉴定
2013/11/03 职场文书
2014乡镇“三八”国际劳动妇女节活动总结
2014/03/01 职场文书
二手房购房意向书范本
2014/04/01 职场文书
启动仪式策划方案
2014/06/14 职场文书
2014年大学生党员自我评议
2014/09/22 职场文书
教师节座谈会主持词
2015/07/03 职场文书
Mysql 如何批量插入数据
2021/04/06 MySQL
CentOS7环境下MySQL8常用命令小结
2022/06/10 Servers