Run this closure as a patch to jQuery.fn.show to make it fire an event when called:
(function(show) { jQuery.fn.show = function() { return show.apply(this, arguments).trigger('showing'); } })(jQuery.fn.show)
E.g.:
$('h1:first')
.bind('showing', function() { console.log('yeah'); });
.hide()
.show();