2

好的,所以我正在创建一个有趣的游戏。游戏涉及一个 5 秒的计时器和像盒子一样形状的 div。第一轮您从 1 个 div 开始,目的是让您在计时器用完之前单击该 div。如果你通过了,你就进入下一个级别,它增加了两倍的盒子,所以第 2 层你有 2 个盒子,第 3 层有 4 个盒子,依此类推。我无法始终创建两倍的 div 长度。我没有太多代码,因为我没有尝试过任何工作。这是jsfiddle:

http://jsfiddle.net/JZdkQ/

<!doctype html>
<html>
<head>
<title>jQuery Project: An exploding game</title>
<meta charset="utf-8">
<style>
body, html {
width: 960;
height: 500%;
}
div.box {
position: relative;
width: 100px;
height: 100px;
background-color: orange;
}
div.exploding {
position: absolute;
width: 100px;
height: 100px;
background-color: red;
}
</style>


</head>
<body>
</body>
</html>
4

3 回答 3

1

使用setInterval而不是setTimeout. setInterval用于根据您设置的时间重复发生的事件,而setTimeout发生一次。

jsfiddle

于 2013-08-07T17:43:46.210 回答
1

你的 javascript...

setTimeout(function(){$("body").append("<div class='box'></div>").length() *2;}, 5000);

是说……

5 秒后获取<body/>并附加 a <div class='box'/>,获取我们刚刚附加的 div 的数量(即 1)并将该数字乘以 2,然后丢弃结果。

用这个...

setInterval(function(){$(".box").clone().appendTo("body");}, 5000);

它说...

每 5 秒,获取类 box 的所有元素,制作它们的副本,并将副本附加到 body。

http://jsfiddle.net/JZdkQ/2/

于 2013-08-07T17:55:08.937 回答
0

惊人的!如果我在你那里我会把加倍长度的员工放在一个函数中,我会递归地调用它。

于 2013-08-07T17:48:46.890 回答