window.onload erweiterung ...
susi
- javascript
hallo,
ich benutzte einige zeit dojo toolkit und da gab es eine möglihckeit mehrere funnktionen mit dojo.addonload zu laden da window.onload ja immer nur eine laden kann, soweit mein wissensstand!
nun hab cih mir eine art loader biblio gebaut ...
window.loader= function(function_name)
{
caller_onload.push(function_name);
}
window.onloader= function()
{
//alert(caller_onload);
for(i=0; i<caller_onload.length; i++)
{
alert(caller_onload[i]);
caller_onload[i].call();
}
}
loader(init);
window.onload= onloader;
also mit loader(function) übergibt man hier eine function und bei window onload wird onloader aufgerufen!
dies funtkioniert auch ganz gut mit der ersten funktion jedoch wenn das array "caller_omload" mehr als ein element hat geht dies nicht mehr!
wo liegt das problem?
ist function.call() die falsche methode zum aufrufen einer function?
bussi susi
Hi,
ist function.call() die falsche methode zum aufrufen einer function?
Ein Objekt wird als Funktion aufgerufen, indem man einfach die Klammern anhängt. Also bei dir vermutlich: caller_onloadi;
Gruß, Cybaer
ich benutzte einige zeit dojo toolkit und da gab es eine möglihckeit mehrere funnktionen mit dojo.addonload zu laden da window.onload ja immer nur eine laden kann, soweit mein wissensstand!
du kannst die ohne Problme sammeln und in eine anonyme Funktion packen
window.onloader= function()
{
//alert(caller_onload);
for(i=0; i<caller_onload.length; i++)
{
alert(caller_onload[i]);
caller_onload[i].call();
übergibst du eine Funktionsreferenz oder den Funktionsnamen?
Also entweder:
caller_onloadi;
oder
windowcaller_onload[i];
Struppi.