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 相关文章推荐
JavaScript Event学习第三章 早期的事件处理程序
Feb 07 Javascript
图解js图片轮播效果
Dec 20 Javascript
Angular 2应用的8个主要构造块有哪些
Oct 17 Javascript
微信小程序 swiper组件详解及实例代码
Oct 25 Javascript
JS实现的简易拖放效果示例
Dec 29 Javascript
javascript 删除数组元素和清空数组的简单方法
Feb 24 Javascript
JQuery Ajax 异步操作之动态添加节点功能
May 24 jQuery
Angular实现的简单查询天气预报功能示例
Dec 27 Javascript
vue项目中引入Sass实例方法
Aug 27 Javascript
关于element-ui表单中限制输入纯数字的解决方式
Sep 08 Javascript
Vue 实现可视化拖拽页面编辑器
Feb 01 Vue.js
vue cli4中mockjs在dev环境和build环境的配置详情
Apr 06 Vue.js
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
Laravel 5框架学习之日期,Mutator 和 Scope
2015/04/08 PHP
老生常谈PHP面向对象之标识映射
2017/06/21 PHP
PHP的mysqli_sqlstate()函数讲解
2019/01/23 PHP
HTML5如何适配 iPhone IOS 底部黑条
2021/03/09 HTML / CSS
提取字符串中年月日的函数代码
2013/11/05 Javascript
jQuery中DOM树操作之复制元素的方法
2015/01/23 Javascript
JQUERY表单暂存功能插件分享
2016/02/23 Javascript
node.js版本管理工具n无效的原理和解决方法
2016/11/24 Javascript
js原生日历的实例(推荐)
2017/10/31 Javascript
vue环境搭建简单教程
2017/11/07 Javascript
Vue.js组件间通信方式总结【推荐】
2018/11/23 Javascript
详解js动态获取浏览器或页面等容器的宽高
2019/03/13 Javascript
基于better-scroll 实现歌词联动功能的代码
2020/05/07 Javascript
0基础学习前端开发的一些建议
2020/07/14 Javascript
python实现的简单猜数字游戏
2015/04/04 Python
使用Python的内建模块collections的教程
2015/04/28 Python
Python3使用requests包抓取并保存网页源码的方法
2016/03/15 Python
Scrapy框架CrawlSpiders的介绍以及使用详解
2017/11/29 Python
Python面向对象程序设计类变量与成员变量、类方法与成员方法用法分析
2019/04/12 Python
Python实现大数据收集至excel的思路详解
2020/01/03 Python
将自己的数据集制作成TFRecord格式教程
2020/02/17 Python
使用 Python 遍历目录树的方法
2020/02/29 Python
Python内置函数locals和globals对比
2020/04/28 Python
Python+PyQt5+MySQL实现天气管理系统
2020/06/16 Python
python 偷懒技巧——使用 keyboard 录制键盘事件
2020/09/21 Python
python爬虫线程池案例详解(梨视频短视频爬取)
2021/02/20 Python
CSS3中的transform属性进行2D和3D变换的基本用法
2016/05/12 HTML / CSS
AmazeUI中各种的导航式菜单与解决方法
2020/08/19 HTML / CSS
美国玛丽莎收藏奢华时尚商店:Marissa Collections
2016/11/21 全球购物
Nordgreen英国官网:斯堪的纳维亚设计师手表
2018/10/24 全球购物
货代行业个人求职简历的自我评价
2013/10/22 职场文书
团日活动总结书格式
2014/05/08 职场文书
诚实守信道德模范事迹材料
2014/08/15 职场文书
童年读书笔记
2015/06/26 职场文书
新教师教学工作总结
2015/08/12 职场文书
navicat 连接Ubuntu虚拟机的mysql的操作方法
2022/04/02 MySQL