Connecting Tech Pros Worldwide Forums | Help | Site Map

message

mike
Guest
 
Posts: n/a
#1: Dec 5 '05
I have a page that generates content in a <tbody></tbody> dynamically.

The thing is if there is about 167 or so records it takes some time to
render them so I put a tag like:

<div id="str_status"> </div>

and in my js I have

function blah()
{
document.getElementById("srt_status").innerHTML = "rendering";
..
..
..some code here that takes a bit of time
..
..
document.getElementById("srt_status").innerHTML = "";
}

Problem is I never see the "rendering" ..... Looks like it renders all
at once and is not updating as the steps occur.

Any thoughts?

Mike


Ivo
Guest
 
Posts: n/a
#2: Dec 5 '05

re: message


"mike" wrote[color=blue]
> I have a page that generates content in a <tbody></tbody> dynamically.
> The thing is if there is about 167 or so records it takes some time to
> render them so (...) in my js I have
>
> function blah()
> {
> document.getElementById("srt_status").innerHTML = "rendering";
> .
> .some code here that takes a bit of time
> .
> document.getElementById("srt_status").innerHTML = "";
> }
>
> Problem is I never see the "rendering" ..... Looks like it renders all
> at once and is not updating as the steps occur.[/color]

That 's right. And in the main we 're only glad that no time in between is
wasted on useless redrawings. To tell the machine that you 're looking for
such intermediate update, you could employ a setTimeout:

function blah()
{
document.getElementById("srt_status").innerHTML = "rendering";
window.setTimeout( 'proceed();', 10 );
}

function proceed()
{
..
..some code here that takes a bit of time
..
document.getElementById("srt_status").innerHTML = "";
}

The minimum amount of waiting time (10 ms. in the code above) needed for the
effect to succeed, varies from machine to machine. I have found that a
Timeout of 1 ms is too short in some situations, but 50 or 100 is much more
than enough.
hth
ivo
http://4umi.com/



Danny
Guest
 
Posts: n/a
#3: Dec 6 '05

re: message



Roughly knowing little of what you have, I'd say is some runtime
issue, some process might be overriding the "rendering" part or
conflicting it, OR is just your timing doesn't allow for a screen
painting of the text long enough to be viewable.



Danny
Closed Thread