Basically just make an image with several different states for the circle loading bar (10%, 20%, 30% etc.), and make something like this:
- <div id="progress_circle">
- <div id="progress_percentage">xx %</div>
- </div>
The #
progress_circle DIV has the background set to "background: white url(/images/progressStates.jpg) no-repeat center left;" (the left-most part of the image being 0% progress) and you gradually, upon progress, shift the X value of "background-position" of this DIV by the width of a single progress block (see this image for an example of what I mean
).So if you have the progress image made out of 11 blocks (0% through 100% step 10%) and each block is 50px wide, you must change it like this: "background-position: center (50*step)px;".
And, obviously, the #progress_percentage DIV is a black circle containing the progress text (must have transparent background to make the progress bar show through it).