With false the event never leaves the child for bubbling.
Compatibility
Browser Support
Event.bubbles is Baseline Widely available (MDN: since July 2015). Safe for modern evergreen browsers. Also available in Web Workers.
✓ Baseline · Widely available
Event.bubbles
Read-only boolean — true when the event bubbles up the DOM tree.
99%Widely available
Google ChromeAll versions · Desktop & Mobile
Full support
Mozilla FirefoxAll versions · Desktop & Mobile
Full support
Apple SafariAll versions · macOS & iOS
Full support
Microsoft EdgeAll versions · Chromium & Legacy
Full support
Internet ExplorerIE 6+ · Legacy environments
Full support
OperaAll modern versions
Full support
Event.bubblesExcellent
Bottom line: Read event.bubbles to know if parents can hear the event. Set bubbles only when creating synthetic events. See the MDN Event.bubbles reference.
Frequently Asked Questions
It is a read-only boolean on an Event. It is true if that event bubbles up through the DOM tree after the target phase, and false if it does not (MDN).
No. MDN marks Event.bubbles as Baseline Widely available (since July 2015). It is not Deprecated, Experimental, or Non-standard. It is also available in Web Workers.
No. bubbles is read-only. Set it when you create a synthetic event with new Event(type, { bubbles: true }) or a subclass constructor. Built-in events get their bubbling behavior from the browser.
No. Many do (for example click and input), but some do not (for example focus and blur in the classic model, and Element scroll). Check event.bubbles or the docs for that event type.
Call event.stopPropagation() to stop further propagation. Call stopImmediatePropagation() to also skip remaining listeners on the same target. preventDefault() does not stop propagation by itself.
Use new Event("my-event", { bubbles: true }), then target.dispatchEvent(event). Parent listeners for that type hear it during the bubble phase.