Question: What's the difference between `event.stopPropagation()` and `event.stopImmediatePropagation()`?

Answer: 
I am a late comer, but maybe I can say this with a specific example:

Say, if you have a `<table>`, with `<tr>`, and then `<td>`. Now, let's say you set 3 event handlers for the `<td>` element, then if you do `event.stopPropagation()` in the first event handler you set for `<td>`, **then all event handlers for `<td>` will still run**, but the event just won't propagate to `<tr>` or `<table>` (and won't go up and up to `<body>`, `<html>`, `document`, and `window`).

Now, however, if you use `event.stopImmediatePropagation()` in your first event handler, then, **the other two event handlers for `<td>` WILL NOT run**, and won't propagate up to `<tr>`, `<table>` (and won't go up and up to `<body>`, `<html>`, `document`, and `window`).

Note that it is not just for `<td>`. For other elements, it will follow the same principle.
1)`event.stopPropagation():`
 =>It is used to stop executions of its corresponding parent handler only.

2) `event.stopImmediatePropagation():`
 => It is used to stop the execution of its corresponding parent handler and also handler or function attached to itself except the current handler.
 => It also stops all the handler attached to the current element of entire DOM.

Here is the example: [Jsfiddle](https://jsfiddle.net/Sahil2Fiddle/1qkp50p9/1/ "JsFiddle Link for the propogation example")!

Thanks,
-Sahil