I\'m using an (I know, I know, ...) in my app (single-page application with ExtJS 4.2) to do file downloads because they contain lots of data and
What you are saying could be done for images and other media formats using $(iframe).load(function() {...});
For PDF files or other rich media, you can use the following Library: http://johnculviner.com/jquery-file-download-plugin-for-ajax-like-feature-rich-file-downloads/
Note: You will need JQuery UI