Bonjour a tous, et merci de prendre le temps d'ecouter mon probleme.
Je vais essayer de bien detailler donc ca sera un peu long.
J'ai un fichier principale dans lequel se trouve un clip: 'target'.
Dans ce clip j'utilise loadmovie pour charger d'autre fichiers swf dans lesquels se trouve des galleries de photos.
Par exemple une de mes gallerie photo se trouve sur Elec.swf
Elec.swf est donc charge dans le clip 'target'.
Dans Elec.swf se trouve principalement deux clips: 'thumnails' et 'main'
Dans thumnails je charge des petites versions des photo, qui lorsque l'on passe la souris dessus, affiche la vraie photo, plus grosse, dans le clip main.
Pour cela j'utilise des fichiers xml.
Dans 'thumnails' je charge chaque thumnail dans un clip qui lui est propre, 'thumbholder', et dans ce thumholder je creer encore un autre clip 'thumloader'.
J'aimerai avoir un preloader qui, une fois terminee, affiche la page completement chargee sans aucun temps de chargement. Car pour le moment il faut attendre a deux moments:
-lorsque Elec.swf se charge dans la page principale
-lorsque l'on met la souris sur un thumnail, la vraie image met un certain temps avant de s'afficher dans 'main'.
J'ai cree un preloader, qui s'affiche assez correctement, mais une fois terminer, la page n'ai pas chargee... et il faut encore attendre lorsque l'on met la souris sur chaque thumnail.
Voici le code pour le preloader dans la 2ieme image:
et voici une partie du code a l'image 3 (j'ai omis certain passage inutile qui gere le comportement d'autre element de la page):
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 myLoaded = Math.round(getBytesLoaded()); myTotal = Math.round(getBytesTotal()); myPercent = myLoaded/myTotal; myBar._width = myPercent*150; myText = Math.round(myPercent*100)+"%"; if (myLoaded == myTotal) { gotoAndStop(3); } else { gotoAndPlay(1); }
J'espere que quelqu'un pourra m'aider!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46 myGallery = new XML(); myGallery.ignoreWhite = true; myGallery.onLoad = function(success) { numimages = this.firstChild.childNodes.length; if(numimages < 7){ upArr._visible = false; downArr._visible = false; } spacing = 55; for (i=0; i<numimages; i++) { this.picHolder = this.firstChild.childNodes[i]; this.thumbHolder = thumbnails.createEmptyMovieClip("thumbnail"+i,i); this.thumbHolder._y = i*spacing; this.thumbLoader = this.thumbHolder.createEmptyMovieClip("thumbnail_image", 0); this.thumbLoader.loadMovie(this.picHolder.attributes.thumb); this.thumbHolder.title = this.picHolder.attributes.title; this.thumbHolder.main = this.picHolder.attributes.main; this.thumbHolder._alpha = 60; this.thumbHolder.onRollOver = function() { if((main._ymouse < 324) && (main._ymouse > -7)){ main.loadMovie(this.main); title.text = this.title; this._alpha = 100; this._width = this._width + 4; this._height = this._height + 4; this._x = this._x - 2; this._y = this._y - 2; } }; this.thumbHolder.onRollOut = function() { if((main._ymouse < 324) && (main._ymouse > -7)){ this._alpha = 60; this._width = this._width - 4; this._height = this._height - 4; this._x = this._x + 2; this._y = this._y + 2; } }; } main.loadMovie("images/Electronic Equipment/0101 - 02.JPG", "_root.main"); }; myGallery.load("elecGallery.xml");
Merci.
Partager