File: elementsFromPoint-invalid-cases.html

package info (click to toggle)
firefox-esr 140.4.0esr-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 4,539,276 kB
  • sloc: cpp: 7,381,286; javascript: 6,388,710; ansic: 3,710,139; python: 1,393,780; xml: 628,165; asm: 426,918; java: 184,004; sh: 65,742; makefile: 19,302; objc: 13,059; perl: 12,912; yacc: 4,583; cs: 3,846; pascal: 3,352; lex: 1,720; ruby: 1,226; exp: 762; php: 436; lisp: 258; awk: 247; sql: 66; sed: 54; csh: 10
file content (56 lines) | stat: -rw-r--r-- 1,688 bytes parent folder | download | duplicates (27)
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
<!DOCTYPE HTML>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="resources/elementsFromPoint.js"></script>
<style>
html {
    overflow-y: scroll;
    overflow-x: scroll;
}
html, body {
    margin: 0;
    padding: 0;
}
body {
    width: 100%;
    height: 100%;
}
#simpleDiv {
    width: 200px;
    height: 200px;
    background-color: rgba(0,255,0,0.5);
}
#beyondTopLeft {
    position: absolute;
    transform: translate3d(-100px, -100px, 10px);
    left: 0;
    top: 0;
    width: 100px;
    height: 100px;
    background-color: rgba(0,0,0,0.1);
}
</style>
<body>
<div id="beyondTopLeft"></div>
<div id="simpleDiv"></div>
<script>
test(function() {
    assertElementsFromPoint('document', 300, 300, [document.documentElement]);
}, "The root element is the last element returned for otherwise empty queries within the viewport");

test(function() {
    var simpleDiv = document.getElementById('simpleDiv');
    var simpleRect = simpleDiv.getBoundingClientRect();
    var simpleCoords = (simpleRect.right - 1) + ', ' + (simpleRect.bottom - 1);
    assertElementsFromPoint('document', simpleRect.right - 1, simpleRect.bottom - 1,
        [simpleDiv, document.body, document.documentElement]);
}, "The root element is the last element returned for valid queries");

test(function() {
    assertElementsFromPoint('document', window.innerWidth + 1, window.innerHeight + 1, []);
    assertElementsFromPoint('document', -1, -1, []);
    assertElementsFromPoint('document', 1, -1, []);
    assertElementsFromPoint('document', -1, 1, []);
}, "An empty sequence is returned for queries outside the viewport");
</script>
</body>