%PDF- <> %âãÏÓ endobj 2 0 obj <> endobj 3 0 obj <>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/Annots[ 28 0 R 29 0 R] /MediaBox[ 0 0 595.5 842.25] /Contents 4 0 R/Group<>/Tabs/S>> endobj ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<> endobj 2 0 obj<>endobj 2 0 obj<>es 3 0 R>> endobj 2 0 obj<> ox[ 0.000000 0.000000 609.600000 935.600000]/Fi endobj 3 0 obj<> endobj 7 1 obj<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/Subtype/Form>> stream
<!doctype html> <title>Event propagation tests</title> <link rel=author title="Aryeh Gregor" href=ayg@aryeh.name> <div id=log></div> <script src=/resources/testharness.js></script> <script src=/resources/testharnessreport.js></script> <script> "use strict"; function testPropagationFlag(ev, expected, desc) { test(function() { var called = false; var callback = function() { called = true }; this.add_cleanup(function() { document.head.removeEventListener("foo", callback) }); document.head.addEventListener("foo", callback); document.head.dispatchEvent(ev); assert_equals(called, expected, "Propagation flag"); // dispatchEvent resets the propagation flags so it will happily dispatch // the event the second time around. document.head.dispatchEvent(ev); assert_equals(called, true, "Propagation flag after first dispatch"); }, desc); } var ev = document.createEvent("Event"); ev.initEvent("foo", true, false); testPropagationFlag(ev, true, "Newly-created Event"); ev.stopPropagation(); testPropagationFlag(ev, false, "After stopPropagation()"); ev.initEvent("foo", true, false); testPropagationFlag(ev, true, "Reinitialized after stopPropagation()"); var ev = document.createEvent("Event"); ev.initEvent("foo", true, false); ev.stopImmediatePropagation(); testPropagationFlag(ev, false, "After stopImmediatePropagation()"); ev.initEvent("foo", true, false); testPropagationFlag(ev, true, "Reinitialized after stopImmediatePropagation()"); var ev = document.createEvent("Event"); ev.initEvent("foo", true, false); ev.cancelBubble = true; testPropagationFlag(ev, false, "After cancelBubble=true"); ev.initEvent("foo", true, false); testPropagationFlag(ev, true, "Reinitialized after cancelBubble=true"); </script>