summaryrefslogtreecommitdiffstats
path: root/dom/events/test/file_mouse_enterleave.html
diff options
context:
space:
mode:
Diffstat (limited to 'dom/events/test/file_mouse_enterleave.html')
-rw-r--r--dom/events/test/file_mouse_enterleave.html45
1 files changed, 45 insertions, 0 deletions
diff --git a/dom/events/test/file_mouse_enterleave.html b/dom/events/test/file_mouse_enterleave.html
new file mode 100644
index 0000000000..2a5bc743f7
--- /dev/null
+++ b/dom/events/test/file_mouse_enterleave.html
@@ -0,0 +1,45 @@
+<html>
+<body>
+<style>
+#target {
+ width: 100%;
+ height: 100%;
+}
+#reflow {
+ width: 100%;
+ height: 10px;
+ background-color: red;
+}
+</style>
+<div id="target"></div>
+<div id="reflow"></div>
+<script>
+function listener(e) {
+ parent.postMessage({ eventType: e.type, targetName: e.target.localName }, "*");
+}
+
+window.addEventListener("message", function(aEvent) {
+ if (aEvent.data === "reflow") {
+ let reflow = document.getElementById("reflow");
+ reflow.style.display = "none";
+ reflow.getBoundingClientRect();
+ reflow.style.display = "block";
+ reflow.getBoundingClientRect();
+
+ // Now wait a bit to see if there is any unexpected events fired.
+ requestAnimationFrame(
+ () => parent.postMessage({ eventType: "reflowed" }, "*")
+ );
+ }
+});
+
+let target = document.getElementById("target");
+target.addEventListener("mouseenter", listener);
+target.addEventListener("mouseleave", listener);
+
+let root = document.documentElement;
+root.addEventListener("mouseenter", listener);
+root.addEventListener("mouseleave", listener);
+</script>
+</body>
+</html>