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 相关文章推荐
setTimeout函数兼容各主流浏览器运行执行效果实例
Jun 13 Javascript
快速解决FusionCharts联动的中文乱码问题
Dec 04 Javascript
禁止iframe页面的所有js脚本如alert及弹出窗口等
Sep 03 Javascript
jQuery复合事件结合toggle()方法的用法示例
Jun 10 jQuery
js学习总结_选项卡封装(实例讲解)
Jul 13 Javascript
Vue源码学习之初始化模块init.js解析
Nov 02 Javascript
react-navigation 如何判断用户是否登录跳转到登录页的方法
Dec 01 Javascript
webpack4 + react 搭建多页面应用示例
Aug 03 Javascript
vue+Element实现搜索关键字高亮功能
May 28 Javascript
Vue中的循环及修改差值表达式的方法
Aug 29 Javascript
vue 开发之路由配置方法详解
Dec 02 Javascript
JQuery获得内容和属性方法解析
May 30 jQuery
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
无数据库的详细域名查询程序PHP版(1)
2006/10/09 PHP
PHP中常用数组处理方法实例分析
2008/08/30 PHP
php循环检测目录是否存在并创建(循环创建目录)
2011/01/06 PHP
一个严格的PHP Session会话超时时间设置方法
2014/06/10 PHP
详解PHP的Yii框架中日志的相关配置及使用
2015/12/08 PHP
[原创]js与自动伸缩图片 自动缩小图片的多浏览器兼容的方法总结
2007/03/12 Javascript
JavaScript 学习笔记(七)字符串的连接
2009/12/31 Javascript
非html5实现js版弹球游戏示例代码
2013/09/22 Javascript
Javascript动态引用CSS文件的2种方法介绍
2014/06/06 Javascript
Jquery焦点与失去焦点示例应用
2014/06/10 Javascript
AngularJs 60分钟入门基础教程
2016/04/03 Javascript
js实现table添加行tr、删除行tr、清空行tr的简单实例
2016/10/15 Javascript
BootStrap Fileinput的使用教程
2016/12/30 Javascript
vue项目打包部署到服务器的方法示例
2018/08/27 Javascript
Vue引用Swiper4插件无法重写分页器样式的解决方法
2018/09/27 Javascript
解决layui的radio属性或别的属性没显示出来的问题
2019/09/26 Javascript
微信小程序实现按字母排列选择城市功能
2019/11/25 Javascript
微信小程序开发中var that =this的用法详解
2020/01/18 Javascript
在Heroku云平台上部署Python的Django框架的教程
2015/04/20 Python
通过Python爬虫代理IP快速增加博客阅读量
2016/12/14 Python
python 数字类型和字符串类型的相互转换实例
2018/07/17 Python
使用python3构建文件传输的方法
2019/02/13 Python
python获取磁盘号下盘符步骤详解
2019/06/19 Python
python调用自定义函数的实例操作
2019/06/26 Python
python字符串替换re.sub()方法解析
2019/09/18 Python
Softmax函数原理及Python实现过程解析
2020/05/22 Python
使用Keras构造简单的CNN网络实例
2020/06/29 Python
Selenium Webdriver元素定位的八种常用方式(小结)
2021/01/13 Python
python 制作磁力搜索工具
2021/03/04 Python
全球最大的户外用品零售商之一:The House
2018/06/12 全球购物
Seavenger官网:潜水服、浮潜、靴子和袜子
2020/03/05 全球购物
职位说明书范文
2014/05/07 职场文书
安全环保标语
2014/06/09 职场文书
教师党员承诺书2015
2015/01/21 职场文书
校本研修个人总结
2015/02/28 职场文书
2019年思想汇报
2019/06/20 职场文书