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 相关文章推荐
初学js插入节点appendChild insertBefore使用方法
Jul 04 Javascript
关于 文本框默认值 的操作js代码
Jan 12 Javascript
纯js简单日历实现代码
Oct 05 Javascript
js实现日期级联效果
Jan 23 Javascript
JS对img标签进行优化使用onerror显示默认图像
Apr 24 Javascript
原生JS实现响应式瀑布流布局
Apr 02 Javascript
javascript实现的右下角弹窗实例
Apr 24 Javascript
javascript中setInterval的用法
Jul 19 Javascript
Javascript 6里的4个新语法
Aug 25 Javascript
解析Angular 2+ 样式绑定方式
Jan 15 Javascript
浅谈angular表单提交中ng-submit的默认使用方法
Sep 30 Javascript
vue项目打包之后背景样式丢失的解决方案
Jan 17 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
咖啡语言
2021/03/03 咖啡文化
javascript some()函数用法详解
2014/11/13 PHP
php中通过DirectoryIterator删除整个目录的方法
2015/03/13 PHP
php实现的Curl封装类Curl.class.php用法实例分析
2015/09/25 PHP
PHP对XML内容进行修改和删除实例代码
2016/10/26 PHP
php实现留言板功能(代码详解)
2017/03/28 PHP
Aster vs KG BO3 第二场2.18
2021/03/10 DOTA
js 静态动态成员 and 信息的封装和隐藏
2011/05/29 Javascript
js导出table到excel同时兼容FF和IE示例
2013/09/03 Javascript
JavaScript面向对象编写购物车功能
2016/08/19 Javascript
JQuery中解决重复动画的方法
2016/10/17 Javascript
Jquery通过ajax请求NodeJS返回json数据实例
2016/11/08 NodeJs
JavaScript基于activexobject连接远程数据库SQL Server 2014的方法
2017/07/12 Javascript
微信小程序实现长按删除图片的示例
2018/05/18 Javascript
操作按钮悬浮固定在微信小程序底部的实现代码
2019/08/02 Javascript
Vue清除定时器setInterval优化方案分享
2020/07/21 Javascript
JavaScript实现商品评价五星好评
2020/11/30 Javascript
[46:09]2014 DOTA2华西杯精英邀请赛 5 25 LGD VS VG第三场
2014/05/26 DOTA
python中循环语句while用法实例
2015/05/16 Python
Django的数据模型访问多对多键值的方法
2015/07/21 Python
Fiddler如何抓取手机APP数据包
2016/01/22 Python
python字符串与url编码的转换实例
2018/05/10 Python
python3爬取数据至mysql的方法
2018/06/26 Python
python 读取鼠标点击坐标的实例
2018/12/29 Python
python学习开发mock接口
2019/04/28 Python
python dumps和loads区别详解
2020/02/04 Python
Python基于stuck实现scoket文件传输
2020/04/02 Python
Juicy Couture Beauty官方网站:香水和化妆品
2019/03/12 全球购物
积极分子思想汇报
2014/01/04 职场文书
医师定期考核实施方案
2014/05/07 职场文书
企业文化标语大全
2014/06/10 职场文书
委托书怎样写
2014/08/30 职场文书
出租车拒载检讨书
2015/01/28 职场文书
2015年管理人员工作总结
2015/05/13 职场文书
历史名人教你十五个读书方法,赶快Get起来!
2019/07/18 职场文书
Java新手教程之ArrayList的基本使用
2021/06/20 Java/Android