Working with scaling.

http://stackoverflow.com/questions/5189968/zoom-canvas-to-mouse-cursor
http://phrogz.net/tmp/canvas_zoom_to_cursor.html

And especially: http://jsfiddle.net/jqMAS/1/