欢迎光临
我们一直在努力

前端实现模拟瀑布流效果

前端特效分享之前端实现模拟瀑布流效果,当页面进行滚动的时候,事件会自动的触发,从而加载更多的方块,这个效果还是蛮好玩的,分享一波了。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
<!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>
赞(0) 打赏
未经允许不得转载: » 前端实现模拟瀑布流效果
分享到: 更多 (0)

评论标题 4

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  1. #1

    不错,点赞

    新手web前端技术5个月前 (07-13)回复
    • 您的支持是对我最大的鼓励

      web前端开发博客5个月前 (07-13)回复
  2. #2

    到此一游

    新手web前端技术5个月前 (07-13)回复
    • +1

      web前端开发博客5个月前 (07-13)回复

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏