summaryrefslogtreecommitdiff
path: root/Tools/TestWebKitAPI/Tests/WebKit2Cocoa/open-multiple-external-url.html
blob: 9c3df85e2486e19637e46b2637c568896c8ff2bd (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
64
65
66
<style>
    iframe { width: 0; height: 0; visibility: hidden; }
</style>

<body>

<script>
window.addEventListener("click", function() {
    let hash = window.location.hash;
    switch (hash) {
    case "#normalLoop":
        normalLoop();
        break;
    case "#loopAfterTimer":
        loopAfterTimer();
        break;
    case "#loopAfterPostMessage":
        loopAfterPostMessage();
        break;
    case "#loopAfterLongTimer":
        loopAfterLongTimer();
        break;
    }
}, false);

function normalLoop() {
    for (var i = 0; i < 3; ++i) {
        var iframe = document.createElement('iframe');
        document.body.appendChild(iframe);
        iframe.contentWindow.location = "mailto:someone@example.com?Subject=Hello%20again";
    }
}

function loopAfterTimer() {
    setTimeout(function() {
        for (var i = 0; i < 3; ++i) {
            var iframe = document.createElement('iframe');
            document.body.appendChild(iframe);
            iframe.contentWindow.location = "mailto:someone@example.com?Subject=Hello%20again";
        }
    }, 500);
}

function loopAfterPostMessage() {
    window.onmessage = function() {
        for (var i = 0; i < 3; ++i) {
            var iframe = document.createElement('iframe');
            document.body.appendChild(iframe);
            iframe.contentWindow.location = "mailto:someone@example.com?Subject=Hello%20again";
        }
    }
    window.postMessage("foo", "*");
}

function loopAfterLongTimer() {
    setTimeout(function() {
        for (var i = 0; i < 3; ++i) {
            var iframe = document.createElement('iframe');
            document.body.appendChild(iframe);
            iframe.contentWindow.location = "mailto:someone@example.com?Subject=Hello%20again";
        }
    }, 2000);
}

</script>
</body>