在加载时多次生成随机div

时间:2011-06-30 22:07:04

标签: javascript jquery html css

让我简单介绍一下。我做了一个页面。 (非常简单 - 两个具有不同背景图像的div,请参阅here.

无论如何,我需要这样做,以便当一个新页面加载时,我一遍又一遍地随机加载两个div,填充整个屏幕内容。因此,没有第一个div的模式,然后是第二个div,它只是随机生成的。有点像一个巨大的网格,两个div重复没有模式。

我的问题是......这可能吗?我假设我需要知道PHP,但我不知道它。

谢谢你们,我感谢所有的帮助!

3 个答案:

答案 0 :(得分:4)

http://jsfiddle.net/uYPRq/

<强> jquery的

var div1 = '<div class="one">';
var div2 = '<div class="two">';

var len = 
    Math.floor(window.innerWidth/30)*Math.floor(window.innerHeight/30);

for (x = 0; x < len; x++) {   
    if ( Math.random() > 0.5 ) {
        $(div1).appendTo('body');
    }
    else {
        $(div2).appendTo('body');
    }
}

<强> CSS

div.one, div.two {
    height:30px;
    width:30px;
    float:left;
}

div.one { background-color:#EBE1E4; }
div.two { background-color:#F0F5DF; }

修改screen.availWidth更改为window.innerWidth

答案 1 :(得分:2)

某事like so?只需循环浏览您喜欢的次数并添加元素。

for (i = 0; i < 300; i++) {
    var type1 = document.createElement("div");
    var type2 = document.createElement("div");
    type1.innerHTML = "div1";
    type2.innerHTML = "div2";
    type1.setAttribute("class", "type1");
    type2.setAttribute("class", "type2");
    document.body.appendChild(type1);
    document.body.appendChild(type2);
}

答案 2 :(得分:0)

不需要PHP。这可以使用Javascript在客户端完成(Jquery可能更容易)。