| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| skylla Registriert seit: Feb 2011
Beiträge: 166
|
hallo, und wieder eine frage bei der ich nicht weiterkommen ![]() ich möchte initial ein paar bilder vorladen. erst wenn diese bilder geladen sind soll es im script weitergehen. ich hab ein paar beispiele geunfden, aber es will einfach nicht funktionieren. hat hier jemand eine idee? HTML-Code: var images = new Array( "img/page1.png", "img/page2.png", "img/page3.png", "img/page4.png", "img/page5.png", "img/page6.png", "img/page7.png", "img/page8.png", "img/page9.png", "img/page10.png", "img/page11.png", "img/page12.png", "img/page13.png", "img/page14.png", "img/page15.png", "img/page16.png" );
function preload() {
var image = new Image();
image.onLoad = function() {
trace( "DONE" );
}
var a = -1;
var b = images.length - 1;
while ( a++ < b ) {
//trace( a + " - " + b );
trace( images[ a ] );
image.src = images[ a ];
}
} ich dachte mir ich zähl dann einfach im onload handler eine variable hoch und vergleich dann mit der länge des arrays. stimmen beide werte überrein müssen ja alle bilder geladen sein und ich könnte eine function aufrufen. aber es klappt wie gesagt nicht und ich weiß nicht wieso ![]() vielen dank für eure hilfe und vg, szylla |
| | |
| | #2 (permalink) |
| Flash-Designer Registriert seit: May 2006 Ort: Wiesbaden
Beiträge: 6.164
|
Du lädst die Bilder ja in einer Schleife immer mit derselben Image-Instanz. Ich kann mir gut vorstellen, dass der Browser deshalb einfach nur den letzten Ladeprozess ausführt....
__________________ Viele Grüße // Martin Martin Kraft // Interaktionsdesign Hilfreiche Websites: // Hilfe zur Adobe Flash Plattform // ActionScript 2 Referenz // ActionScript 3 Referenz // ActionScript 3 Arbeitshandbuch // weitere Flash Ressourcen Bitte keine Flashfragen per PM oder Profilnachricht! Dafür ist das Forum da! |
| | |
| | #4 (permalink) |
| skylla Registriert seit: Feb 2011
Beiträge: 166
|
irgendwas läuft aber grad auch komplett schief. nicht einmal das hier klappt: HTML-Code: var image = new Image();
image.onLoad = function() {
trace( "DONE" );
}
image.src = "img/page1.png"; |
| | |
| | #5 (permalink) |
| Keine Panik Registriert seit: Apr 2010 Ort: Düsseldorf (im ernst)
Beiträge: 1.868
|
tja, eines der Probleme wenn alles dynamische Objekte sind => keine (vernünftigen) Fehlermeldungen onLoad != onload nur im FF getestet, erfahrungsgemäs, sollten Opera, Safari und Chrome darin übereinstimmer, nur beim IE bin ich unsicher. //noch etwas Code zum spielen PHP-Code: Geändert von thomas_E (08-12-2011 um 15:23 Uhr) |
| | |
| | #7 (permalink) | |
| skylla Registriert seit: Feb 2011
Beiträge: 166
|
noch eine kleine frage... übrigens coole preloader varianten thomas! wenn das laden beendet ist und ich eine function aufrufe. und ich zu einem späteren zeitpunkt dann meine bilder brauche. push ich das this im onLoad handler dann in ein array und greiß dann später darauf zu, also so in etwa: HTML-Code: img.onload = function() {
imageHolder.push( this );
//... edit: ich muss halt sicher stellen das dann in diesem holder array bei index 0 bild 1 kommt, bei index 1 bild 2 usw usw... oder kann ich dann später einfach egal welches image von denen die gepreloaded worden sind über: Zitat:
bitte um aufklärung. vielen dank und grüße, szylla Geändert von szylla (08-12-2011 um 16:01 Uhr) | |
| | |
| | #8 (permalink) | |
| Keine Panik Registriert seit: Apr 2010 Ort: Düsseldorf (im ernst)
Beiträge: 1.868
|
ganz so einfach ist das nicht, bei der linearen Variante ist die Reiehenfolge zwar immer korrekt, aber es wird (bisher) auch immer das selbe Image-Objekt verwendet, um die Bilder vorzuladen. bei der paralellen Variante ist die Reiehnfolge der geladenen Bilder nicht vorhersehbar. Zitat:
mach mal ein trace in dem paralellen Code, einmal nach der for-schleife, und in der onload-Funktion, dann wirst du sehen, dass die komplette Schleife (und vermutlich noch mehr Code) abgearbeitet wurde, bevor das erste onload-Event gefeuert wird, selbst wenn das Bild direkt aus dem Browsercache kommt und somit ja "sofort" da ist. da geht es zwar nur um milisekunden (die du nicht merkst), aber für den Code kann das eine Ewigkeit sein. hier die beiden Codes mit image-array: PHP-Code: Geändert von thomas_E (08-12-2011 um 16:49 Uhr) Grund: loadNext geändert | |
| | |
| | #9 (permalink) |
| skylla Registriert seit: Feb 2011
Beiträge: 166
|
hi thomas, hast natürlich recht. das mit sofort war quatsch... das hatte ich nicht ganz bis zu ende gedacht ![]() danke für dein beispiel! schaut sehr vielversprechend aus. ich werds gleich mal antesten. schönen abend noch! szylla edit: funktioniert superb! gekauft. Geändert von szylla (08-12-2011 um 19:13 Uhr) |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| [Flash CS4] Preloader für XML Bilder | Fabz01 | Flash Einsteiger | 4 | 31-08-2009 11:36 |
| [Flash CS4] Preloader und Bilder | Aerzte1992 | Flash Einsteiger | 0 | 30-06-2009 03:17 |
| Preloader für Bilder? | ObergottJango | Flash MX | 2 | 09-09-2004 16:36 |
| Bilder preloader | llexoduz | ActionScript 1 | 5 | 25-08-2003 19:42 |
| preloader für bilder | allie-tn | Flash 4 und Flash 5 | 3 | 29-05-2003 13:22 |