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 相关文章推荐
ext 列表页面关于多行查询的办法
Mar 25 Javascript
js判断undefined变量类型使用typeof
Jun 03 Javascript
JavaScript字符串常用类使用方法汇总
Apr 14 Javascript
javascript日期处理函数,性能优化批处理
Sep 06 Javascript
VUEJS实战之利用laypage插件实现分页(3)
Jun 13 Javascript
jquery点击展示与隐藏更多内容
Dec 03 Javascript
原生javascript实现的全屏滚动功能示例
Sep 19 Javascript
js移动端图片压缩上传功能
Aug 18 Javascript
web前端vue之vuex单独一文件使用方式实例详解
Jan 11 Javascript
JS实现点击下拉列表文本框中出现对应的网址,点击跳转按钮实现跳转
Nov 25 Javascript
JavaScript实现简单的弹窗效果
May 19 Javascript
vue route新窗口跳转页面并且携带与接收参数
Apr 10 Vue.js
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
让这部DC动画新作刷新你的认知
2020/03/03 欧美动漫
以文件形式缓存php变量的方法
2015/06/26 PHP
最新制作ThinkPHP3.2.3完全开发手册
2015/11/23 PHP
PHP实现的微信公众号扫码模拟登录功能示例
2019/05/30 PHP
兼容最新firefox、chrome和IE的javascript图片预览实现代码
2014/08/08 Javascript
用JavaScript实现页面重定向功能的教程
2015/06/04 Javascript
JS实现的自定义右键菜单实例二则
2015/09/01 Javascript
jQuery实现仿QQ头像闪烁效果的文字闪动提示代码
2015/11/03 Javascript
@ResponseBody 和 @RequestBody 注解的区别
2017/03/08 Javascript
vue组件初学_弹射小球(实例讲解)
2017/09/06 Javascript
NodeJS搭建HTTP服务器的实现步骤
2018/10/12 NodeJs
node app 打包工具pkg的具体使用
2019/01/17 Javascript
实用Javascript调试技巧分享(小结)
2019/06/18 Javascript
React+EggJs实现断点续传的示例代码
2020/07/07 Javascript
Vue.extend 登录注册模态框的实现
2020/12/29 Vue.js
Python实现线程池代码分享
2015/06/21 Python
Python基于动态规划算法计算单词距离
2015/07/25 Python
Python注释详解
2016/06/01 Python
python模块之time模块(实例讲解)
2017/09/13 Python
python中实现数组和列表读取一列的方法
2018/04/03 Python
详解Python 解压缩文件
2019/04/09 Python
最新PyCharm 2020.2.3永久激活码(亲测有效)
2020/11/26 Python
python对输出的奇数偶数排序实例代码
2020/12/04 Python
Python列表的深复制和浅复制示例详解
2021/02/12 Python
实例讲解使用SVG制作loading加载动画的方法
2016/04/05 HTML / CSS
世界闻名的衬衫制造商:Savile Row Company
2018/07/30 全球购物
木马的传播途径主要有哪些
2016/04/08 面试题
四群教育工作实施方案
2014/03/26 职场文书
材料成型及控制工程专业求职信
2014/06/19 职场文书
汽车技术服务与贸易专业求职信
2014/07/20 职场文书
美术学专业求职信
2014/07/23 职场文书
一般基层干部群众路线教育实践活动个人对照检查材料
2014/11/04 职场文书
2014年教师学期工作总结
2014/11/08 职场文书
毕业生个人总结
2015/02/28 职场文书
《海上日出》教学反思
2016/02/23 职场文书
Html5生成验证码的示例代码
2021/05/10 Javascript