Using jQuery.ready before jQuery loaded

As pulled from blog and comments on Sam Saffron's blog: http://samsaffron.com/archive/2012/02/17/stop-paying-your-jquery-tax

by bizamajig

HTML

<script type="text/javascript">
window.$ = (function() {
  var q = [], f = function (cb) {
    q.push(cb);
  };
  f.attachReady = function ($) { 
    $(function () {
      $.each(q, function(i, f) {
        f();
      });
      q.length = 0; // clear it, just in case
    });
    return $;
  }
  return f;
})();
</script>

<script type="text/javascript">$(function () { console.log("1"); });</script>
<p>some text</p>
<script type="text/javascript">$(function () { console.log("2"); });</script>
<p>some text</p>
<script type="text/javascript">$(function () { console.log("3"); });</script>
<p>some text</p>
<script type="text/javascript">$(function () { console.log("4"); });</script>
<p>some text</p>
<script type="text/javascript">$(function () { console.log("5"); });</script>
<p>some text</p>

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js"></script>
<script type="text/javascript">$(function () { console.log("6"); });</script>
<script type="text/javascript">
$.noConflict();
$ = $.attachReady(jQuery);
</script>
<script type="text/javascript">$(function () { console.log("7"); });</script>

JavaScript

$(function () { console.log("8"); });