function repositionDescriptions() {
  $('.image_container').each(function(i) {
    var container = $(this);
    var image = $('img', container);
    var pos = container.offset(); 
    $('.info', container).css({top: pos.top, left: pos.left - image.width()});
  });
}

$(function() {
  $('.image_container').each(function(i) {
    var container = $(this);
    $('h2, h3', container).wrapAll('<div class="info"></div>');
  });

  repositionDescriptions();
  $(window).resize(repositionDescriptions);

  $('.image_container').hover(
    function() {
      $('.info', $(this)).show('fast');
    },
    function() {
      $('.info', $(this)).queue(function() { $(this).hide('fast'); $(this).dequeue(); });
    }
  );
});

