/**
 * Onload event handler.
 * 
 * Modified from David Flanagans 2006 "Javascript: The Definitive Guide, Fifth Edition", Example 17-7.
 * 
 * @return
 */
function onLoadHandler(f) {
	if (onLoadHandler.loaded) f();
	else onLoadHandler.funcs.push(f);
}

onLoadHandler.funcs = [];
onLoadHandler.loaded = false;

onLoadHandler.run = function() {
	if (onLoadHandler.loaded) return;
	
	for (; 0<onLoadHandler.funcs.length;) {
		try {
			onLoadHandler.funcs.pop()();
		} catch(ex) {}
	}
	
	delete onLoadHandler.funcs;
	delete onLoadHandler.run;
}

// Set onLoad-Event accordingly
if (window.addEventListener) window.addEventListener("load", onLoadHandler.run, false);
else if (window.attachEvent) window.attachEvent("onload", onLoadHandler.run);
else window.onload = onLoadHandler.run;

