Comunidad de diseño web y desarrollo en internet online

Carrusel con XML

Citar            
MensajeEscrito el 14 Sep 2008 04:57 pm
He bajado el carrusel de un videotutorial cuya tercera y ultima parte es esta (http://www.gotoandlearn.com/play?id=34).
Y lo que quiero conseguir es que los iconos me lleven no a un texto
como en el ejemplo, sino a una direccion http que se abra en una
pestaña nueva. Como es logico, cada icono del carrrusel tendría que
abrir una url distinta.
No tengo ni idea de ActionScript. Que codigo tendria que poner?
FLA DEL EJEMPLO:

Código ActionScript :

import mx.utils.Delegate;
import mx.transitions.Tween;
import mx.transitions.easing.*;
var numOfItems:Number;
var radiusX:Number = 300;
var radiusY:Number = 75;
var centerX:Number = Stage.width / 2;
var centerY:Number = Stage.height / 2;
var speed:Number = 0.05;
var perspective:Number = 130;
var home:MovieClip = this;
theText._alpha = 0;
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
{
var t = home.attachMovie("item","item"+i,i+1);
t.angle = i * ((Math.PI*2)/numOfItems);
t.onEnterFrame = mover;
t.toolText = nodes.attributes.tooltip;
t.content = nodes.attributes.content;
t.icon.inner.loadMovie(nodes.attributes.image);
t.r.inner.loadMovie(nodes.attributes.image);
t.icon.onRollOver = over;
t.icon.onRollOut = out;
t.icon.onRelease = released;
}
}
function over()
{
home.tooltip.tipText.text = this._parent.toolText;
home.tooltip._x = this._parent._x;
home.tooltip._y = this._parent._y - this._parent._height/2;
home.tooltip.onEnterFrame = Delegate.create(this,moveTip);
home.tooltip._alpha = 100;
}
function out()
{
delete home.tooltip.onEnterFrame;
home.tooltip._alpha = 0;
}
function released()
{
home.tooltip._alpha = 0;
for(var i=0;i
{
var t:MovieClip = home["item"+i];
t.xpos = t._x;
t.ypos = t._y;
t.theScale = t._xscale;
delete t.icon.onRollOver;
delete t.icon.onRollOut;
delete t.icon.onRelease;
delete t.onEnterFrame;
if(t != this._parent)
{
var tw:Tween = new Tween(t,"_xscale",Strong.easeOut,t._xscale,0,1,true);
var tw2:Tween = new Tween(t,"_yscale",Strong.easeOut,t._yscale,0,1,true);
var tw3:Tween = new Tween(t,"_alpha",Strong.easeOut,100,0,1,true);
}
else
{
var tw:Tween = new Tween(t,"_xscale",Strong.easeOut,t._xscale,100,1,true);
var tw2:Tween = new Tween(t,"_yscale",Strong.easeOut,t._yscale,100,1,true);
var tw3:Tween = new Tween(t,"_x",Strong.easeOut,t._x,200,1,true);
var tw4:Tween = new Tween(t,"_y",Strong.easeOut,t._y,320,1,true);
var tw5:Tween = new Tween(theText,"_alpha",Strong.easeOut,0,100,1,true);
theText.text = t.content;
var s:Object = this;
tw.onMotionStopped = function()
{
s.onRelease = unReleased;
}
}
}
}
function unReleased()
{
delete this.onRelease;
var tw:Tween = new Tween(theText,"_alpha",Strong.easeOut,100,0,0.5,true);
for(var i=0;i
{
var t:MovieClip = home["item"+i];
if(t != this._parent)
{
var tw:Tween = new Tween(t,"_xscale",Strong.easeOut,0,theScale,1,true);
var tw2:Tween = new Tween(t,"_yscale",Strong.easeOut,0,theScale,1,true);
var tw3:Tween = new Tween(t,"_alpha",Strong.easeOut,0,100,1,true);
}
else
{
var tw:Tween = new Tween(t,"_xscale",Strong.easeOut,100,t.theScale,1,true);
var tw2:Tween = new Tween(t,"_yscale",Strong.easeOut,100,t.theScale,1,true);
var tw3:Tween = new Tween(t,"_x",Strong.easeOut,t._x,t.xPos,1,true);
var tw4:Tween = new Tween(t,"_y",Strong.easeOut,t._y,t.yPos,1,true);
tw.onMotionStopped = function()
{
for(var i=0;i

{
var t:MovieClip = home["item"+i];
t.icon.onRollOver = Delegate.create(t.icon,over);
t.icon.onRollOut = Delegate.create(t.icon,out);
t.icon.onRelease = Delegate.create(t.icon,released);
t.onEnterFrame = mover;
}
}
}
}
}
function moveTip()
{
home.tooltip._x = this._parent._x;
home.tooltip._y = this._parent._y - this._parent._height/2;
}
xml.load("icons.xml");
function mover()
{
this._x = Math.cos(this.angle) * radiusX + centerX;
this._y = Math.sin(this.angle) * radiusY + centerY;
var s = (this._y - perspective) /(centerY+radiusY-perspective);
this._xscale = this._yscale = s*100;
this.angle += this._parent.speed;
this.swapDepths(Math.round(this._xscale) + 100);
}
this.onMouseMove = function()
{
speed = (this._xmouse-centerX)/2500;
}

XML:
<icons>
<icon image="icon1.png" tooltip="Limewire" content="Texto 1" />
<icon image="icon2.png" tooltip="Rubik's Cube" content="Texto 2" />
<icon image="icon3.png" tooltip="Widgets" content="Texto 3" />
<icon image="icon4.png" tooltip="Trash Can" content="Texto 4" />
<icon image="icon5.png" tooltip="Compass" content="Texto 5" />
<icon image="icon6.png" tooltip="Toaster" content="Texto 6" />
<icon image="icon7.png" tooltip="Can of SPAM" content="Texto 7" />
<icon image="icon8.png" tooltip="Apple iMac" content="Texto 8" />
<icon image="icon9.png" tooltip="Apple iPod" content="Texto 9" />
<icon image="icon10.png" tooltip="Terminal Window" content="Texto 10" />
</icons>

Por piccicatto

3 de clabLevel



 

firefox
Citar            
MensajeEscrito el 15 Sep 2008 02:06 pm
Buenas podrias fijarte de poner en vez de
theText.text = t.content;

colocar :
theText.text = getURL(t.content);

luego en el xml donde dice text= colocas el url "http://www....."

y fijate si asi te funciona..

saludos! ^^

Por Fokerone

26 de clabLevel



 

2008

firefox

 

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