summaryrefslogtreecommitdiffstats
path: root/layout/reftests/bugs/256180-3.html
blob: 8b0d6e8c65d6757ddd780c1a99c3d7489425cfc4 (plain)
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
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>1026-element-deep display: block</title>
<script>
// Any copyright is dedicated to the Public Domain.
// http://creativecommons.org/publicdomain/zero/1.0/

function count() {
    var depth = 0;
    var deepest = 0;
    var current = document;
    var next = null;
    outer: for (;;) {
        if ((next = current.firstChild)) {
            depth++;
            if (depth > deepest) {
                deepest = depth;
            }
            current = next;
            continue;
        }
        for (;;) {
            if ((next = current.nextSibling)) {
                current = next;
                break;
            }
            current = current.parentNode;
            depth--;
            if (current == document) {
                break outer;
            }
        }
    }

    var h1 = document.getElementsByTagName("h1")[0];
    var p = document.createElement("p");
    var t = document.createTextNode("Actual depth (including text leaves): " + deepest);
    p.appendChild(t);
    h1.parentNode.insertBefore(p, h1.nextSibling);
}

function deep() {
    var t = document.createTextNode("PASS");
    var div = document.createElement("div");
    div.appendChild(t);
    for (var i = 0; i < 1023; i++) {
        var another = document.createElement("div");
        another.appendChild(div);
        div = another;
    }
    document.body.appendChild(div);
    count();
}

window.addEventListener('DOMContentLoaded', deep, false);
</script>
</head>
<body>
<h1>1026-element-deep display: block</h1>
</body>
</html>