I have a JavaScript application that an user interacts with. I need to save the appearance of the interface at the current time, crop out the part that I need (or only shot
It's impossible in pure JavaScript, without using ActiveX.
Google is doing this in Google+ and a talented developer reverse engineered it and produced http://html2canvas.hertzen.com/ . To work in IE you'll need a canvas support library such as http://excanvas.sourceforge.net/
It is impossible using JavaScript (nor Flash). It depends on your constraints, and there are some workarounds.
On the server side nothing really holds you from doing generally anything. Using WebKit or even launching Internet Explorer or Firefox, you can create the snapshot server-side. It's far from elegant, but possible.
I think using JavaScript, you won't be able to due to the security restrictions. Flash, possibly.