title: run next function after setTimeout done
body: <p>How to make it work? pls help.</p>
  
  <pre><code>function first() {
      setTimeout((function() {
          $('#q').append('first &lt;br&gt;');
      }), 1000);
  }
  function second() {
      $('#q').append('second &lt;br&gt;');
  }
  function third() {
      $('#q').append('third &lt;br&gt;');
  }
  $.when(first()).done(second()).done(third()); 
  </code></pre>
  
  <p>first() runs as last function, i need as first</p>
  
  <p>Fiddle here: <a href="http://jsfiddle.net/hqphbhx3/" rel="noreferrer">JSFIDDLE</a></p>