Wednesday, February 07, 2007 12:27 PM
TanzimSaqib
JavaScript execution before the page has finished loading
When a webpage loads, it fetches the stylesheets, javascript, images, other objects etc. So, when it is done, it's already late and user may complain about the site's poor speed of execution. One way you can make it faster, you can start JavaScript execution immediately right after the HTML DOM has finished loading and ready to traverse, before the images.
// Introduce our custom event onDOMReady
window.onDOMReady = DOMReady
function DOMReady(fn)
{
// According to standard implementation
if(document.addEventListener)
document.addEventListener("DOMContentLoaded", fn, false);
// IE
else
document.onreadystatechange = function()
{
checkReadyState(fn);
}
}
function checkReadyState(fn)
{
if(document.readyState == "interactive")
fn();
}
window.onDOMReady(
function()
{
// DOM is loaded
// So start JavaScript execution
}
);
Filed Under:
JavaScript
Anonymous comments are disabled
About TanzimSaqib
Tanzim Saqib is a
Senior Developer, who spent half of his life on software and worked for many companies like #1 .NET controls provider
Telerik Inc, #1 personalized Web 2.0 start-page like
Pageflakes (acquired by LiveUniverse). He developed many projects ranging from banking solutions for Citibank, HSBC, Wamu, Wells Fargo etc. to
Paperless Virtual University. He is industry's earliest and leading widget developer and as know as
"Widget Master" to his peers.
He is a preacher of Microsoft technologies. While he jams with the latest additions to .NET, in his spare time he blogs at
http://weblogs.asp.net/TanzimSaqib, maintains his personal website
http://www.TanzimSaqib.com, leads
.NET Research group. writes articles.
He is an
easy going, fun loving, and
passionate technology individual who is open to any kind of
business opportunity and professional relationship. He currently lives in Bangladesh, but travels anywhere in the world on professional demand.
Email: me at TanzimSaqib dot com