js实现瀑布流效果(自动生成新的内容)


Posted in Javascript onMarch 16, 2017

当滚动条接近底部会自动生成新的内容(色块)

效果图:

js实现瀑布流效果(自动生成新的内容)

代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
  <style>
    *{list-style: none;}
    div{overflow: hidden;}
    ul{float: left;}
    li{width:300px; margin-bottom:10px;}
  </style>
  <script>
    function rnd(n,m){
      return parseInt(Math.random()*(m-n))+n;
    }
    function cl(){
      var li = document.createElement('li');
      li.style.height=rnd(100,500)+'px';
      li.style.background='rgb('+rnd(0,255)+','+rnd(0,255)+','+rnd(0,255)+')';
      return li;
    }
    window.onload=function(){
      var aUl = document.getElementsByTagName('ul');
      //alert(aUl.length);
      function c20(){
        for(var i =0;i<20;i++){
          var arr =[];
          for(var j=0;j<aUl.length;j++){
            arr.push(aUl[j])
          }
          arr.sort(function(n,m){
            return n.offsetHeight- m.offsetHeight
          });
          arr[0].appendChild(cl());
        }
      }
      c20();
      window.onscroll=function(){
        var arr = [];
        for (var j = 0; j < aUl.length; j++) {
          arr.push(aUl[j])
        }
        arr.sort(function (n, m) {
          return n.offsetHeight - m.offsetHeight
        });
        var n = (document.body.scrollTop || document.documentElement.scrollTop) + document.documentElement.clientHeight;
        if (n > arr[0].offsetHeight) {
          c20()
        }
      }
    }
  </script>
</head>
<body>
<div>
  <ul></ul>
  <ul></ul>
  <ul></ul>
</div>
</body>
</html>

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
jquery图片放大镜功能的实例代码
Mar 26 Javascript
JS将所有对象s的属性复制给对象r(原生js+jquery)
Jan 25 Javascript
Jquery实现控件的隐藏和显示实例
Feb 08 Javascript
jQuery三级下拉列表导航菜单代码分享
Apr 15 Javascript
原生js实现节日时间倒计时功能
Jan 18 Javascript
Vue.js实现一个漂亮、灵活、可复用的提示组件示例
Mar 17 Javascript
前端必备插件之纯原生JS的瀑布流插件Macy.js
Nov 22 Javascript
浅谈Node.js爬虫之网页请求模块
Jan 11 Javascript
AngularJS双向数据绑定原理之$watch、$apply和$digest的应用
Jan 30 Javascript
在react中使用vuex的示例代码
Jul 30 Javascript
vue实现路由懒加载的3种方法示例
Sep 01 Javascript
javascript中layim之查找好友查找群组
Feb 06 Javascript
es6的数字处理的方法(5个)
Mar 16 #Javascript
Webpack打包慢问题的完美解决方法
Mar 16 #Javascript
div中文字内容溢出常见的解决方法
Mar 16 #Javascript
JavaScript实现类似淘宝的购物车效果
Mar 16 #Javascript
原生js更改css样式的两种方式
Mar 15 #Javascript
js清除浏览器缓存的几种方法
Mar 15 #Javascript
从零开始做一个pagination分页组件
Mar 15 #Javascript
You might like
javascript数组与php数组的地址传递及值传递用法实例
2015/01/22 PHP
thinkPHP批量删除的实现方法分析
2016/11/09 PHP
php使用PDO下exec()函数查询执行后受影响行数的方法
2017/03/28 PHP
centos下file_put_contents()无法写入文件的原因及解决方法
2017/04/01 PHP
利用PHPStorm如何开发Laravel应用详解
2017/08/30 PHP
Yii框架连表查询操作示例
2019/09/06 PHP
Mootools 1.2教程 同时进行多个形变动画
2009/09/15 Javascript
JS删除数组元素的函数介绍
2013/03/27 Javascript
使用js显示当前时间示例
2014/03/02 Javascript
javascript控制在光标位置插入文字适合表情的插入
2014/06/09 Javascript
jQuery+HTML5加入购物车代码分享
2020/10/29 Javascript
javascript三种代码注释方法
2016/06/02 Javascript
Node.js用readline模块实现输入输出
2016/12/16 Javascript
完美解决node.js中使用https请求报CERT_UNTRUSTED的问题
2017/01/08 Javascript
jQuery制作图片旋转效果
2017/02/02 Javascript
基于JavaScript实现贪吃蛇游戏
2020/03/16 Javascript
react国际化化插件react-i18n-auto使用详解
2020/03/31 Javascript
Selenium执行Javascript脚本参数及返回值过程详解
2020/04/01 Javascript
解决vue addRoutes不生效问题
2020/08/04 Javascript
Python中无限元素列表的实现方法
2014/08/18 Python
python 获得任意路径下的文件及其根目录的方法
2019/02/16 Python
Python八皇后问题解答过程详解
2019/07/29 Python
python-opencv获取二值图像轮廓及中心点坐标的代码
2019/08/27 Python
在python中logger setlevel没有生效的解决
2020/02/21 Python
Python图像处理库PIL的ImageGrab模块介绍详解
2020/02/26 Python
详解python datetime模块
2020/08/17 Python
总经理办公室主任岗位职责
2013/11/12 职场文书
益达广告词
2014/03/14 职场文书
2014年班主任自我评价范文
2014/04/23 职场文书
运动会口号大全
2014/06/07 职场文书
个人作风纪律整顿整改措施
2014/10/25 职场文书
小学见习报告
2014/10/31 职场文书
2014年小学教导处工作总结
2014/12/19 职场文书
鲁滨逊漂流记读书笔记
2015/06/26 职场文书
Java 中的 Unsafe 魔法类的作用大全
2021/06/26 Java/Android
MySQL实例精讲单行函数以及字符数学日期流程控制
2021/10/15 MySQL