ugrás a tartalomhoz

onload alternatíva

grimus · 2007. Feb. 5. (H), 20.43
Üdv!
AZ onload-os script hívásnak van valami alternatívája?
Azért kéne ez, mert egy olyan JS alkalmazást írok, amit weboldalakba fognak beilleszteni, ha minden igaz, és az onload után aktiválja magát. Jó lenne, ha a weboldal szerkesztőjének csak egy sima js forrást kéne include-olnia a html-be.
 
1

meg is van a megoldás

grimus · 2007. Feb. 5. (H), 21.11
<script type="text/javascript">

window.onload = load;


function load()
{
 alert("load event detected!");
}
</script>
2

DOM ready?

Dualon · 2007. Feb. 5. (H), 21.13
Arra esetleg érdemes figyelni, hogy ha a DOM-t szeretnéd módosítani, akkor meg kell várni, míg felépül.
3

fura

grimus · 2007. Feb. 5. (H), 21.32
Érdekes amúgy ez a window.onload, olyan, mintha nem csak az oldal betöltődés után aktivizálódna, hanem néha előtte is...
5

Nem hiszem

Bártházi András · 2007. Feb. 5. (H), 22.27
Nem hinném, hogy ilyen előfordulna.
4

Adalék

Bártházi András · 2007. Feb. 5. (H), 22.26
http://ajaxian.com/archives/the-windowonload-problem-revisited
6

Pont ma! Itt is, ott is...

wiktor · 2007. Feb. 6. (K), 01.15
Néha egészen hihetetlen "véletlenek" vannak itt a Weblaboron... :))
7

Újabb adalék

grimus · 2007. Feb. 6. (K), 10.56
Ha a következőképp van beillesztve:

<script src="beillesztendo.js" type="text/javascript" ></script>

És a JS fájlban meghívva:

window.onload = fuggveny(para1, para2);

akkor működik, de ha a fenti kód az includeban van:

<script src="beillesztendo.js" type="text/javascript" >window.onload = fuggveny(para1, para2);</script>

akkor nem működik. Miért?
8

nem tudom

vbence · 2007. Feb. 6. (K), 11.27
Nem követem alegújabb ECMA fejleményeket, de a régi szép időkben úgy volt, hogy ez:
 window.onload = fuggveny(para1, para2);
a függvényhívás eredménye képpen kapott értékre állítja be az onload-ot. Ez így teljesen logikus.

Ha paramétereket szeretnél biggyeszteni az eseménykezelőre, akkor talán így:
window.onload = function () { fuggveny(123, 456); }
Amúgy pedig a window.onload manapság nem túl ötlet. Gondolj csak arra, ha több eseménykezelőd van, amik nem tudnak egymásról.