Html
    Css
    Js
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
function aa() {
var oMain = document.getElementById('main');
var ITEM_WIDTH = 200;
var ITEM_SPACE = 10;
var itemArray = [];
var itemHeight = [];
//
function rand(min, max) {
return parseInt(Math.random() * (max - min + 1) + min);
}
function createItem(min, max) {
for (var i = min; i < max; i++) {
var div = document.createElement('div');
div.innerHTML = i;
div.style.height = rand(100, 300) + 'px';
div.style.width = ITEM_WIDTH + 'px';
div.style.backgroundColor = 'rgb(' + rand(0, 255) + ',' + rand(0, 255) + ',' + rand(0, 255) + ')';
oMain.appendChild(div);
itemArray[i] = div;
}
layout();
}
createItem(0, 30);
//div
function layout() {
var t = 0;
var l = 0;
var frist = true;
var mainWidth = 0;
var winWidth = document.documentElement.clientWidth || document.body.clientWidth;
for (var i = 0; i < itemArray.length; i++) {
if ((l + ITEM_WIDTH) >= winWidth) {
frist = false;
mainWidth = l;
l = 0;
}
if (frist) {
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
↑上面代码改变,会自动显示代码结果 jQuery调用版本:1.11.3
 立即下载

瀑布流效果

3
      夜白的夜白0
      2017/5/2 11:50:48
      CH.Rxin0
      2017/4/27 17:51:25

      请问这个瀑布流怎么实现里面每个div的内容不一样呢,

          纷飞舞评论奖励 1 jQ币
          2017/4/28 11:10:03
          main.append("<div><img src='imgs/"+rand(1,39)+".jpg'/><p>"+i+"</p></div>");

          这是我另外用jQuery写的,你可以按照你的需要修改一下

      回复