Anchoring with ids is a feature of html4 of which many of the new browsers try to support, practically id behave like anchor name:
The id attribute may be used to create an anchor at the start tag of
any element (including the A element).
In the same document says:
The id and name attributes share the same name space. This means that
they cannot both define an anchor with the same name in the same
document. It is permissible to use both attributes to specify an
element's unique identifier for the following elements: A, APPLET,
FORM, FRAME, IFRAME, IMG, and MAP. When both attributes are used on a
single element, their values must be identical.
Since it needs to build a namespace table with all the anchor names, it needs to load all the elements, consequently the entire page before it can jump to that specific link. Much like JavaScript where the code needs to load before it can work.
I don't see any way to make the browser jump to that link before the page has finished loading. And I think behaved the same with anchors names.
The only workaround I can think of is using JavaScript. Load some lower bandwidth nice placeholders and then load the images and big resources after the page has loaded. There are a lot of ways to code that, you have one example here: http://snipplr.com/view/10934/.