There is one really annoying thing about those loading graphics: When people do not provide a <noscript> that does not show them. Also they are useless as progress indicators. Countless times I looked at them while there was nothing happening (be it a non-responding server or a simple bug).
Has anything like this been done for other site graphics?
It would be great to be able to customize fg/bg colors of rounded border images or background gradients without firing up photoshop. It would be even nicer if it could scrape the colors out of your site's css.
If you can avoid showing that loading icon altogether, take it out. Precache the AJAX request as soon as you can, if it won't overload your server, and don't make the user wait.
Of course, the goal should be to eliminate all sources of slowdown from one's web page.
I especially hate seeing progress indicators for things that "used to" be fast, if only they weren't ajaxified. The classic case being the pop-up image browsers, because it's so much more fun to watch a spinning icon than to actually see my images instantly.
I specifically mentioned images that really were displaying instantly, prior to fancy UI. In other words, the page did not require the fancy UI, but one was added because someone thought it would be cool. And the result was a less optimal experience.
Web site maintainers should be keenly interested in what their visitors think. But apparently, honesty only loses me points.