summaryrefslogtreecommitdiffstats
path: root/dom/base/test/intersectionobserver_window.html
diff options
context:
space:
mode:
Diffstat (limited to 'dom/base/test/intersectionobserver_window.html')
-rw-r--r--dom/base/test/intersectionobserver_window.html46
1 files changed, 46 insertions, 0 deletions
diff --git a/dom/base/test/intersectionobserver_window.html b/dom/base/test/intersectionobserver_window.html
new file mode 100644
index 0000000000..826b5064eb
--- /dev/null
+++ b/dom/base/test/intersectionobserver_window.html
@@ -0,0 +1,46 @@
+<!DOCTYPE HTML>
+<html>
+<head>
+<style>
+#target5 {
+ position: absolute;
+ top: 0px;
+ left: 0px;
+ width: 20px;
+ height: 20px;
+ background: #f00;
+}
+</style>
+<body>
+<div id="target"></div>
+<script>
+ var io = new IntersectionObserver(function(records) {
+ var viewportWidth =
+ document.documentElement.clientWidth || document.body.clientWidth;
+ var viewportHeight =
+ document.documentElement.clientHeight || document.body.clientHeight;
+ var result = records.length === 1 &&
+ records[0].rootBounds.top === 0 &&
+ records[0].rootBounds.left === 0 &&
+ records[0].rootBounds.right === viewportWidth &&
+ records[0].rootBounds.width === viewportWidth &&
+ records[0].rootBounds.bottom === viewportHeight &&
+ records[0].rootBounds.height === viewportHeight;
+ if (!result) {
+ result = [records.length,
+ records[0].isIntersecting,
+ records[0].rootBounds.top,
+ records[0].rootBounds.left,
+ records[0].rootBounds.right,
+ records[0].rootBounds.width,
+ records[0].rootBounds.bottom,
+ records[0].rootBounds.height,
+ viewportWidth,
+ viewportHeight].join(',');
+ }
+ window.opener.postMessage(result, '*');
+ });
+ io.observe(document.getElementById("target"));
+</script>
+</body>
+</html>