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代码
Dec 01 Javascript
Js的MessageBox
Dec 03 Javascript
javaScript对象和属性的创建方法
Jan 15 Javascript
How to Auto Include a Javascript File
Feb 02 Javascript
jquery插件制作 手风琴Panel效果实现
Aug 17 Javascript
angularjs实现与服务器交互分享
Jun 24 Javascript
前端jquery部分很精彩
May 03 Javascript
JS禁止查看网页源代码的实现方法
Oct 12 Javascript
详解vue+css3做交互特效的方法
Nov 20 Javascript
使用vue-router beforEach实现判断用户登录跳转路由筛选功能
Jun 25 Javascript
教你完全理解ReentrantLock重入锁
Jun 03 Javascript
jQuery实现简单评论功能
Aug 19 jQuery
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
支持oicq头像的留言簿(二)
2006/10/09 PHP
php 获得汉字拼音首字母的函数
2009/08/01 PHP
php制作unicode解码工具(unicode编码转换器)代码分享
2013/12/24 PHP
php生成txt文件实例代码介绍
2016/04/28 PHP
php使用curl_init()和curl_multi_init()多线程的速度比较详解
2018/08/15 PHP
PHP获取HTTP body内容的方法
2018/12/31 PHP
BOOM vs RR BO5 第二场 2.14
2021/03/10 DOTA
禁止JQuery中的load方法装载IE缓存中文件的方法
2009/09/11 Javascript
js列举css中所有图标的实现代码
2011/07/04 Javascript
jquery+ajax+C#实现无刷新操作数据库数据的简单实例
2014/02/08 Javascript
from表单多个按钮提交用onclick跳转不同action
2014/04/24 Javascript
深入理解JavaScript中的对象
2015/06/04 Javascript
bootstrap fileinput 上传插件的基础使用
2017/02/17 Javascript
vue router demo详解
2017/10/13 Javascript
详解Angular5 服务端渲染实战
2018/01/04 Javascript
Vue实现动态添加或者删除对象和对象数组的操作方法
2018/09/21 Javascript
JS实现利用闭包判断Dom元素和滚动条的方向示例
2019/08/26 Javascript
Vue 实现输入框新增搜索历史记录功能
2019/10/15 Javascript
jquery实现进度条状态展示
2020/03/26 jQuery
js实现从右往左匀速显示图片(无缝轮播)
2020/06/29 Javascript
基于JavaScript实现轮播图效果
2021/01/02 Javascript
Python3 正在毁灭 Python的原因分析
2014/11/28 Python
Python 专题五 列表基础知识(二维list排序、获取下标和处理txt文本实例)
2017/03/20 Python
浅谈Python爬虫基本套路
2019/03/25 Python
python 绘制正态曲线的示例
2020/09/24 Python
HTML5 拖放(Drag 和 Drop)详解与实例代码
2017/09/14 HTML / CSS
HTML5录音实践总结(Preact)
2020/05/07 HTML / CSS
eDreams巴西:廉价机票,酒店优惠和度假套餐
2017/04/14 全球购物
阿联酋网上花店:Ferns N Petals
2018/02/14 全球购物
工程力学专业自荐信范文
2014/03/17 职场文书
文艺晚会主持词
2014/03/24 职场文书
应届毕业生自荐书
2014/06/18 职场文书
七夕相亲活动策划方案
2014/08/31 职场文书
故宫英文导游词
2015/01/31 职场文书
医院党建工作总结2015
2015/05/26 职场文书
图书借阅制度范本
2015/08/06 职场文书