title: Do DOM Events Always Run Single Threaded?
body: <p>So I <a href="https://stackoverflow.com/a/18822109/1348195">answered a question</a> recently and OP asked if I could add the following about DOM events to my answer:</p>
  
  <blockquote>
    <p>Maybe you could also add to your answer that not only they are executed first, but the subsequent event is blocked until the first one finishes.</p>
  </blockquote>
  
  <p>Well, <em>can</em> I add that? Do I <em>know</em> that with DOM events will run one event at a time and will wait for the previous one to finish before the next one starts?</p>
  
  <p>Do I at least know this is always the case in browser JavaScript?</p>
  
  <p>Finding a conclusive answer to this has been surprisingly difficult to be so far, I've expected a "yes" but I just can't find it.</p>
  
  <hr>
  
  <p><strong>Clarification</strong>: I'm not asking about adding other asynchronous handlers inside the handlers, or calling setTimeout or workers and such. All I'm asking is whether or not the order of event handler execution is guaranteed, and that the next one starts only the previous one finished executing ? A good answer would cite a credible source (preferably - a specification). Nothing about threading here.</p>