1<!DOCTYPE html> 2<meta charset="utf-8"> 3<title>Event's stopImmediatePropagation</title> 4<link rel="help" href="https://dom.spec.whatwg.org/#dom-event-stopimmediatepropagation"> 5<link rel="author" href="mailto:d@domenic.me" title="Domenic Denicola"> 6 7<script src="/resources/testharness.js"></script> 8<script src="/resources/testharnessreport.js"></script> 9 10<div id="target"></div> 11 12<script> 13"use strict"; 14 15setup({ single_test: true }); 16 17const target = document.querySelector("#target"); 18 19let timesCalled = 0; 20target.addEventListener("test", e => { 21 ++timesCalled; 22 e.stopImmediatePropagation(); 23 assert_equals(e.cancelBubble, true, "The stop propagation flag must have been set"); 24}); 25target.addEventListener("test", () => { 26 ++timesCalled; 27}); 28 29const e = new Event("test"); 30target.dispatchEvent(e); 31assert_equals(timesCalled, 1, "The second listener must not have been called"); 32 33done(); 34</script> 35