I just pushed an update that changes the behavior of how the “Start Render” measurement works. It used to mark the time at which something could display on the page (the content dimensions would be non-zero) but it didn’t mean that anything was ACTUALLY displayed.
The update moves the measurement to when something actually gets drawn to the screen for the first time. I can’t guarantee that the “something” is anything the user cares about (css background image for example) but I can guarantee that it is the first time that anything gets rendered to the screen. I also added in a screen shot of what the screen looked like at the start render time so you can see what was displayed (if it looks blank it isn’t really, may just be compressed-away by heavy jpeg compression of the screen shot or your background color is just off-white).
I also added in a screen shot for the “DOM Element time” so you can see what the screen looked like at the time that measurement point was registered but that measurement doesn’t get a lot of use.
Thanks, I’ll take a look and see if the render doesn’t happen until after the document complete (a condition I probably need to check for and account for in the measurement).
I hardened the code a bit more and added some redundancy so things should be better now. It doesn’t look like it is specific to that url, just that start render would sometimes get delayed or not register (seemed to happen very rarely but saw it on aa couple of different tests that people ran).
About Start Render vs Doc Complete…
Is it not possible that indeed SR load time is higher than DC?
This would mean that the browser gets to onload before rendering anything on the page.
If a web page is created using lots of DIVs, all nested and ugly (you know the kind of HTML I’m taling about), and needs a long time to render, would it not be possible for the actual SR to be higer than DC?
It is possible for SR to be after DC 9particularly on really fast connections where the browser is crazily requesting stuff) because IE does some lazy painting and layout if too much is going on. I just want to make sure it really is the case and it’s not something I’m artificially measuring incorrectly when it does happen
I’m pretty confident that the start render code is very solid at this point but questionable examples are always welcome.