Short Answer: There's no need for any special plugins, it can all be done with reasonably simple JQuery
Detail:
I doubt there's anything seriously complicated going on here. There's a question I saw recently Here that deals with triggering changes on scroll - that is to say, when the scroll height reaches a certain level (the next "page" you want the different background to appear on), you can trigger changes like changing the background image.
In order to make the backgrounds crossfade, just use JQuery.fadeIn() and .fadeOut() on your two images. I'm assuming you know how you make an image appear in the background by some method (e.g., z-index).
The other bits and pieces will obviously have their own requirements to set up. The fitbit site in general is far more complicated - it behaves differently at different stages on the page and again differently if you view it with a different window size (all this can be controlled using CSS @media tags and JQuery). Given that your question asks specifically about the crossfading section I haven't addressed any of these other aspects of the page. I'm assuming you already know how to do them or aren't interested in replicating them :)