What you need is not just plain zooming. But a zoom and pan function within a fixed viewport. The website you gave probably code it from scratch. I found one for you which is not exactly the same, but you might want totake a look here.
Meanwhile, I'm eager to see what Sbm007's example.