Wartet body.onload auf IFrames?

8

Ich weiß, dass das onload -Ereignis darauf wartet, dass Seitenressourcen vor dem Auslösen geladen werden - Bilder, Stylesheets usw.

Beinhaltet dies jedoch IFrames innerhalb der Seite? Mit anderen Worten, ist es garantiert, dass alle untergeordneten Frames onload s immer ausgelöst werden, bevor die Eltern dies tun?

Bitte lassen Sie mich auch wissen, ob das Verhalten zwischen Browsern variiert.

    
levik 05.06.2009, 17:34
quelle

3 Antworten

3

Wie ich auf meinen Seiten sehe, hat jeder iframe ein unabhängiges onload, und Top-frame onload wartet nicht darauf, dass iframes ausgelöst werden.

Ich habe Gif / Png-Banner auf meiner Seite, die manchmal sehr langsam geladen werden, also habe ich sie in iframe eingefügt und das Ganze Site- und Onload-Event schneller gemacht.

    
Thinker 05.06.2009, 17:39
quelle
7

Nein, tut es nicht. Wenn Sie so etwas tun möchten, müssen Sie einen Onload-Handler für den Iframe hinzufügen. Sie können dies gut mit jQuery tun:

%Vor%

Dies würde eine Warnung ausgeben, wenn alle Frames geladen sind.

Siehe das Beispiel:

Ссылка

    
cgp 05.06.2009 17:45
quelle
5

Oder einfaches JavaScript sollte funktionieren ..

%Vor%

habe das nicht wirklich getestet, sollte aber funktionieren ... als mit document.onload = function() { checkIframes(); }

darauf verweisen

Ich mag Bibliotheken wie jQuery nicht wirklich, weil ich bisher herausgefunden habe, dass ich mit normalem Javascript mehr mit weniger Code erreichen kann.

    
Wouter Hoolwerf 30.12.2010 20:09
quelle

Tags und Links