Source code

Revision control

Copy as Markdown

Other Tools

Test Info:

<!DOCTYPE html>
<meta charset="utf-8">
<title>Listeners are invoked in correct order (AT_TARGET phase)</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<div id="log"></div>
<script>
"use strict";
test(() => {
const el = document.createElement("div");
const expectedOrder = ["capturing", "bubbling"];
let actualOrder = [];
el.addEventListener("click", evt => {
assert_equals(evt.eventPhase, Event.AT_TARGET);
actualOrder.push("bubbling");
}, false);
el.addEventListener("click", evt => {
assert_equals(evt.eventPhase, Event.AT_TARGET);
actualOrder.push("capturing");
}, true);
el.dispatchEvent(new Event("click", {bubbles: true}));
assert_array_equals(actualOrder, expectedOrder, "bubbles: true");
actualOrder = [];
el.dispatchEvent(new Event("click", {bubbles: false}));
assert_array_equals(actualOrder, expectedOrder, "bubbles: false");
}, "Listeners are invoked in correct order (AT_TARGET phase)");
</script>