Comunidad de diseño web y desarrollo en internet online

cargar imagen sin que desaparesca la anterior.

Citar            
MensajeEscrito el 20 May 2008 05:17 pm
Hola a todos!! :lol:

ya se que van a decirme que deberia primero haber buscado en el foro la respuesta a esto; pero pueden estar seguros de que lo he hecho y no encuentro como solucionar mi problema en específico, esta es la segunda vez que esto me pone en problemas ya que a mi jefe no le gusta que suceda, y por otro lado me interesa mucho saber como hacerlo. Y es lo siguiente:

Tengo un tipo portafolio que llama imagenes pequeñas mediante un xml, las acomoda en filas dentro de un movieclip que tiene scroll, luego al clicar en cada imagen pequeña se carga en diferentes campos de texto la info deseada para cada imagen, al mismo tiempo se carga a un lado la misma imagen en grande...

Mi problema gigantesco es que al cargar cada imagen grande, la primera desaparece por unos instantes hasta que aparece la segunda, trate de solucionarlo porniendo un Loader llamado "cargadorBajo" donde alClicar cargo primero la imagen y cuando termina de cargarse la trato de pasar a otro Loader llamado "cargador" que esta sobre el anterior pero aun asi me da problemas, no todo el tiempo pero en ocasiones si.

aca esta el codigo:


Código :

 
import mx.transitions.Tween;
import mx.transitions.easing.*;


//var cantidad:Number = 20;
var cantidad:Number;
var columna:Number = 5;
var dirX:Number = 0;
var dirY:Number = 0;
var thumb:MovieClip;
var tin:MovieClip = holder_mc;
tin._x = 20;
tin._y = 20;



//===================================texto
p = 0;

var obj_xml:XML = new XML();
obj_xml.ignoreWhite = true;

obj_xml.onLoad = function(exito) {
   xmlNode = this.firstChild;
   cantidad = xmlNode.childNodes.length;
   if (exito) {
      for (var i:Number = 0; i<cantidad; i++) {

         //======================================         
         new Tween(thumb, "_alpha", Regular.easeInOut, 0, 100, 2, true);
         cargador.contentPath = obj_xml.firstChild.childNodes[0].attributes.image;
         cliente_txt.text = obj_xml.firstChild.childNodes[0].attributes.client;
         director_txt.text = obj_xml.firstChild.childNodes[0].attributes.director;
         designer_txt.text = obj_xml.firstChild.childNodes[0].attributes.designer;
         description_txt.text = obj_xml.firstChild.childNodes[0].attributes.description;
         description_txt.wordWrap = true;
         description_txt.multiline = true;
         
         
         thumb = tin.attachMovie("Loader", "mc"+i, i);
         thumb.attachMovie("container","cont",this.getNextHighestDepth());
         thumb.setSize(50,70);
         thumb._x = 65*dirX;
         thumb._y = 85*dirY;
         thumb.fontSize = 10;
         thumb.label = i;
         thumb.contentPath = obj_xml.firstChild.childNodes[thumb.label].attributes.thumb;
         dirX++;
         if (dirX == columna) {
            dirX = 0;
            dirY++;
         }

         //===================================== botones
         
         thumb.onRelease = function():Void  {
            cargadorBajo.contentPath = obj_xml.firstChild.childNodes[this.label].attributes.image;            
            cliente_txt.text = obj_xml.firstChild.childNodes[this.label].attributes.client;
            director_txt.text = obj_xml.firstChild.childNodes[this.label].attributes.director;
            designer_txt.text = obj_xml.firstChild.childNodes[this.label].attributes.designer;
            description_txt.text = obj_xml.firstChild.childNodes[this.label].attributes.description;
            description_txt.wordWrap = true;
            description_txt.multiline = true;
            this.attachMovie("onClickColor", "clickColor", i);
            p = this.label;
            trace(this.label);
            
         };
         thumb.onRollOver = function():Void  {
            this._alpha = 50;
            //trace(this.label);
         };
         thumb.onRollOut = function():Void  {
            var miTween:Tween = new Tween(this, "_alpha", Regular.easeIn, this._alpha, 100, 0.2, true);
         };
         
         next_mc.onPress = function():Void {
            if(p < cantidad-1) {
            loading_gif.play();
            loading_gif._alpha = 30;
            p++;
            cargadorBajo.contentPath = obj_xml.firstChild.childNodes[p].attributes.image;
            }
         }
         prev_mc.onPress = function():Void {
            if(p > 0) {
            loading_gif.play();
            loading_gif._alpha = 30;
            p--;
            cargadorBajo.contentPath = obj_xml.firstChild.childNodes[p].attributes.image;
            }
         }
         
         //=============================================         
         up_mc.onPress = function():Void {
            this.onEnterFrame = function():Void {
               tin._y += 7;
               scrollbar_mc.scroll_mc._y -= 7;
               updateAfterEvent();
                  if (tin._y > 20){
                     tin._y = 20;
                     scrollbar_mc.scroll_mc._y = -0.5;
                  }
            }
         }
         up_mc.onRelease = function():Void {
            delete this.onEnterFrame;
            
         }
         
         down_mc.onPress = function():Void {
            this.onEnterFrame = function():Void {
            tin._y -= 7;
            scrollbar_mc.scroll_mc._y += 7;
            updateAfterEvent();
            if (tin._y < -150){
               tin._y = -150;
               scrollbar_mc.scroll_mc._y = 195.6;
            }
            }
         }
         down_mc.onRelease = function():Void {
            delete this.onEnterFrame;
         }
         
         //================== Listener 
         cargador.scaleContent = false;
         cargadorBajo.scaleContent = false;

         var mientrasCarga:Object = new Object();
         mientrasCarga.progress = function(evento) {   
            loading_gif.play();
            loading_gif._alpha = 30;
            loaded_txt.text = cargadorBajo.percentLoaded;            
            trace(cargador.bytesLoaded+" bytes cargados de "+cargador.bytesTotal);      
         };
         var alClicar:Object = new Object();
         alClicar.complete = function(evento) {
            cargador.contentPath = cargadorBajo.contentPath;   
            loaded_txt.text = "";                     
            //var miTween:Tween = new Tween(cargadorBajo, "_alpha", Regular.easeIn, 0, 100, 0.3, true);            
            loading_gif.stop();
            loading_gif._alpha = 0;   
            trace("has cargado la imagen "+cargador.contentPath);
            trace("altura de cargadorBajo = "+cargadorBajo._height);            
            var miTween:Tween = new Tween(stroke_mc, "_height", Regular.easeIn, stroke_mc._height, cargadorBajo._height, 0.1, true);            
         };         

         cargadorBajo.addEventListener("progress",mientrasCarga);
         cargadorBajo.addEventListener("complete",alClicar);                  

         //=============================

      }
   } else {
      description_txt.text = "no se ha podido cargar correctamente el archivo texto.xml";
   }
};

obj_xml.load("texto.xml");

//=========================================

   



   




aca dejo el archivo completo por si lo pueden ver, se los agradeceria mucho, y para todo aquel que le sea util aun con ese detalle faltante. ^^

http://realtyguidecr.com/portafolio/portafolio_clab.zip


Muchas gracias desde ya :D

Por lucaz

37 de clabLevel



 

El Señor me amó y se entregó a sí mismo por mí

firefox
Citar            
MensajeEscrito el 22 May 2008 07:47 pm
Como aporte a lo que anteriormente escribi, me di cuenta que el problema solo sucede en internet explorer 7, no sucede en Firefox ni tampoco en Safari para pc.

Gracias :D

Por lucaz

37 de clabLevel



 

El Señor me amó y se entregó a sí mismo por mí

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.