Comunidad de diseño web y desarrollo en internet online

ayuda con un carrousel

Citar            
MensajeEscrito el 02 Abr 2009 01:29 pm
Buenaaas!! Mirar, estoy haciendo un carrousel en flash con imagenes linkeadas y precisamente es en ese linkeo en el que tengo problemas. El carrousel me va perfecto pero no hay manera de conseguir que cada imagene me lleve a su correspondiente pelicula flash. Y es que para cada imagen he creado una pelicula flash con la imagen mas en grande y un texto al lado que me gustaria que al darle a la imagen apareciera en pantalla.

Les dejo aquí el código. Es lo mismo que otros tutoriales que he encontrado por aquí, asi que fijaros sobretodo en la funcion reloved que es donde he intentado poner la accion de carga de esas "swf". De todos modos lo pongo todo pq como yo no entiendo demasiado igual el error esta en otra cosa.

GRACIAS POR ADELANTADO!!!

Código :

Código :

var numOfItems:Number;
var radiusX:Number = 450;
var radiusY:Number = 90;
var centerX:Number = Stage.width/2;
var centerY:Number = Stage.height/2;
var speed:Number = 0.05;
var perspective:Number = 100;
var home:MovieClip = this;

var tooltip:MovieClip = this.attachMovie("tooltip","tooltip",10000);
tooltip._alpha=0;

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

xml.onLoad = function(){
   var nodes = this.firstChild.childNodes;
   numOfItems = nodes.length;
   for(var i=0;i<numOfItems;i++){
      var t = home.attachMovie("item","item"+i, i+1);
                t.angle = i * ((Math.PI*2)/numOfItems);
      t.icon.inner.loadMovie( nodes[i].attributes.image);
                t.r.inner.loadMovie(nodes[i].attributes.image);
      t.onEnterFrame = mover;
      t.onPress = released;
               
   }
         
}

function released(){
   this.loadMovie(["imag"+i+".swf"],getNextHighestDepth());
}
xml.load("icons.xml");




function mover(){
        this._x = Math.cos(this.angle) * radiusX + centerX;
        this._y = Math.sin(this.angle) * radiusY + centerY;
   var s:Number = (this._y - perspective)/ (centerY+radiusY-perspective);
        this._xscale = this._yscale=s*90;
   this.angle += this._root.speed; 
   this.swapDepths(Math.round(this._xscale)+100);
}

this.onMouseMove = function(){
   speed=(this._xmouse-centerX)/2500; 
}

Por ALEGNA_21

19 de clabLevel



 

msie7
Citar            
MensajeEscrito el 03 Abr 2009 01:16 pm
Hola, intenta asi:

Código ActionScript :

var xml:XML = new XML ();
xml.ignoreWhite = true;
var cargador:MovieClipLoader = new MovieClipLoader();
createEmptyMovieClip("_vista", 999);


Y dentro del for:

Código ActionScript :

t.index = i;
t.onPress = function()
{
   cargador.loadClip("imag" + this.index + ".swf", this._parent._vista);
};

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox
Citar            
MensajeEscrito el 09 Abr 2009 09:54 am
Muchisimas gracias. La verdad es que va perfecto. Solo que ahora tengo otro problemilla. Yo quiero que cuando se le de sobre esa nueva pantalla con la imagen se cree un fundido que te lleve de nuevo al carrousel y que por tanto, se descargue esa pelicula.

Para ello he hecho algo un tanto cutre, pero entre que todavía no controlo demasiado y que quería hacerlo rápido aunque alfinal ya voy con retraso :P , lo que había hecho es crear en cada swf un rectangulo negro en la capa superior que me sirviera de fundido variando la opacidad. De modo que pongamos que tiene 10 ft cada pelicula. Del 0 al 5 va solo y abre de negro. En el 5 hay un stop. Y cuando haces click con el boton sobre cualquier parte (tengo un boton invisible que lo cubre todo) continua la animacion esta vez en el sentido contrario, cierra a negro.

Bien, pues entonces lo que quiero es poder desde el swf pricipal, darle play a esos nuevos clips que hemos cargado, y al mismo tiempo decirle que se descarguen.

He probado mil cosas, y nada. La última es esta que adjunto.

uN SALUDO Y MIL GRACIAS!

Código :

t.onRelease = function() 
      { 
            t2= cargador.loadClip("imag" + this.index + ".swf", this._parent._vista); 
          t2.onPress = function(){
             this.play();
          }
          t2.onRelease= function(){
             this.unloadClip();
          }
             
      }; 

Por ALEGNA_21

19 de clabLevel



 

firefox

 

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