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 相关文章推荐
javascript 实现简单的table排序及table操作练习
Dec 28 Javascript
THREE.JS入门教程(6)创建自己的全景图实现步骤
Jan 25 Javascript
js函数名与form表单元素同名冲突的问题
Mar 07 Javascript
jquery+css实现的红色线条横向二级菜单效果
Aug 22 Javascript
原生js实现类似fullpage的单页/全屏滚动
Jan 22 Javascript
详解使用JS如何制作简单的ASCII图与单极图
Mar 31 Javascript
Vue组件开发技巧总结
Mar 04 Javascript
Vue中使用webpack别名的方法实例详解
Jun 19 Javascript
解决Vue-cli npm run build生产环境打包,本地不能打开的问题
Sep 20 Javascript
微信小程序实现组件顶端固定或底端固定效果(不随滚动而滚动)
Apr 09 Javascript
JS寄快递地址智能解析的实现代码
Jul 16 Javascript
React + Threejs + Swiper 实现全景图效果的完整代码
Jun 28 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
ThinkPHP3.1数据CURD操作快速入门
2014/06/19 PHP
浅谈Laravel队列实现原理解决问题记录
2017/08/19 PHP
php之可变函数的实例详解
2017/09/13 PHP
django中的ajax组件教程详解
2018/10/18 PHP
window.location.hash 使用说明
2010/11/08 Javascript
jquery中dom操作和事件的实例学习-表单验证
2011/11/30 Javascript
JS打开图片另存为对话框实现代码
2012/12/26 Javascript
angular中使用路由和$location切换视图
2015/01/23 Javascript
js中setTimeout()与clearTimeout()用法实例浅析
2015/05/12 Javascript
JavaScript登录验证码的实现
2016/10/27 Javascript
AngularJS+bootstrap实现动态选择商品功能示例
2017/05/17 Javascript
使用layer弹窗,制作编辑User信息页面的方法
2019/09/27 Javascript
JS中==、===你分清楚了吗
2020/03/04 Javascript
jQuery实现简单评论区功能
2020/10/26 jQuery
Selenium执行JavaScript脚本的方法示例
2020/12/31 Javascript
[42:25]EG vs Spirit Supermajor 败者组 BO3 第二场 6.4
2018/06/05 DOTA
Python中asyncore的用法实例
2014/09/29 Python
Python延时操作实现方法示例
2018/08/14 Python
Python通过TensorFlow卷积神经网络实现猫狗识别
2019/03/14 Python
Python 网络编程之UDP发送接收数据功能示例【基于socket套接字】
2019/10/11 Python
Python for循环及基础用法详解
2019/11/08 Python
python3 assert 断言的使用详解 (区别于python2)
2019/11/27 Python
Python求平面内点到直线距离的实现
2020/01/19 Python
什么是python的列表推导式
2020/05/26 Python
HTML5使用drawImage()方法绘制图像
2014/06/23 HTML / CSS
NARS化妆品官方商店:美国彩妆品牌
2017/08/26 全球购物
简述进程的启动、终止的方式以及如何进行进程的查看
2014/02/20 面试题
如何利用find命令查找文件
2016/11/18 面试题
Prototype如何为一个Ajax添加一个参数
2015/12/06 面试题
珠宝的促销活动方案
2014/08/31 职场文书
关于运动会广播稿300字
2014/10/05 职场文书
2014乡党委副书记党建工作汇报材料
2014/11/02 职场文书
大学生在校表现评语
2014/12/31 职场文书
单位政审意见范文
2015/06/04 职场文书
公司宣传语大全
2015/07/13 职场文书
初中班主任工作随笔
2015/08/15 职场文书