HTMLcopy
1
<button id="renderButton" onclick="render()">Render</button>
2
<div id="container"></div>
CSScopy
15
1
html, body {
2
width: 100%;
3
height: 100%;
4
margin: 0;
5
padding: 0;
6
}
7
button {
8
margin: 10px 0 0 10px;
9
}
10
#container {
11
position: absolute;
12
width: 100%;
13
top: 40px;
14
bottom: 0;
15
}
JavaScriptcopy
x
1
stage = acgraph.create("container");
2
3
var start;
4
var finish;
5
// a layer for green squares to be reused each new generation
6
var rectLayer = stage.layer();
7
var labelBg = stage.rect();
8
var label = stage.text(130, 130);
9
10
stage.listen("renderstart", function() {
11
start = (new Date()).getTime();
12
});
13
14
stage.listen("renderfinish", function() {
15
16
finish = (new Date()).getTime();
17
18
label.text((finish - start) + "ms");
19
var labelBounds = label.getBounds();
20
21
labelBg
22
.setX((labelBounds.left)-20)
23
.setY((labelBounds.top)+20)
24
.setWidth(labelBounds.width+40)
25
.setHeight(labelBounds.height-40)
26
.fill("#fff")
27
.stroke("#000")
28
.cursor("pointer");
29
label.zIndex(1000000);
30
label.disablePointerEvents(true);
31
labelBg.zIndex(1000000);
32
});
33
34
// render rectangles
35
function render(){
36
37
// clear the layer
38
rectLayer.removeChildren();
39
40
stage.suspend();
41
42
for (var i = 0; i < 500; i++) {
43
var left = Math.random() * 300;
44
var qwer = Math.random() * 300;
45
var rect = stage.rect(left, qwer, 10, 10);
46
rect.fill('green');
47
}
48
49
stage.resume();
50
};