Jag har gjort en "Loader" i form av ett <div> objekt på en websida som skall visas när man klickar på en länk. Problemet är att denna inte visas under den dataladdning som görs, det verkar som JavaScriptet låser upp framen på sidan tills dess funktionen är klar.Loader Problem
Hittade nått tips om att använda sig av setTimeout() funktionen och använda denna som ett asyncront anrop till den funktion som visar Loadern detta var dock utan resultat.
HtmlKod
<img title="Load" src="/icons/load.gif" onclick="Load_OnClick()" style="cursor: hand" />
<div id="divLoader" style="position: absolute; left: 300px; top: 300px;background: black; width: 300px; height: 300px; visibility: hidden">
Laddar...
</div>
Javascript
function Load_OnClick()
{
ShowBuzy();
BindData();
ShowIdle();
}
function BindData()
{
//stora arrayer som binder data till ett table
}
function ShowBuzy()
{
var divWaiting = this._document.getElementById('divWaiting');
divWaiting.style.visibility='visible';
}
function ShowIdle()
{
var divWaiting = this._document.getElementById('divWaiting');
divWaiting.style.visibility='hidden';
}
Forts...
Problemet är inte att loadern inte visas, och det är inte att databind funktionen går för snabbt, det verkar helt enkelt som den låser upp hela dokumentet tills dess Load_OnClick() är klar.