I also tried $(function(){
$('.frame3').click(function(){ $('#story').animate({ opacity: 'hide'}, 'fast').css ('background-position' , '-0px -302px').animate({ opacity: 'show'}, 'fast'); $('#word1').animate({ opacity: 'hide'}, 'fast').text("I loved you").animate({ opacity: 'show'}, 'fast'); }); }) And that didn't work either - even though the .text method is after the .animate method, it still happens first. Frustrating!