$(document).ready( function() { SITESNOW.rollover.init(); }); SITESNOW = {}; SITESNOW.rollover = { init: function() { this.preload(); $(".ro").hover( function () { $(this).attr( 'src', SITESNOW.rollover.newimage($(this).attr('src')) ); }, function () { $(this).attr( 'src', SITESNOW.rollover.oldimage($(this).attr('src')) ); } ); }, preload: function() { $(window).bind('load', function() { $('.ro').each( function( key, elm ) { $('').attr( 'src', SITESNOW.rollover.newimage( $(this).attr('src') ) ); }); }); }, newimage: function( src ) { return src.substring( 0, src.search(/(\.[a-z]+)$/) ) + '_o' + src.match(/(\.[a-z]+)$/)[0]; }, oldimage: function( src ) { return src.replace(/_o\./, '.'); } };