Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Jeremy Oleaner

[] Menu carrossel de videos

Recommended Posts

Eu to fazendo um menu tipo carrossel de video porem não sei como faço para ele chamar os videos quando clicar na imagem alguem me ajude{?

 

codigo abaixo

 

 

//importando as classes necessarias

import mx.utils.Delegate; //classe para criar eventos dentro de outras instancias

import mx.transitions.Tween; //classe para animações via AS

import mx.transitions.easing.*; //classe para animações via AS

 

 

var numerodeelementos:Number; //cria variavel com numero de elementos do scroller

var tamanhodoelemento = 128; //largura de cada elemento

var largura = Stage.width; //largura total do scroller

var altura = Stage.height; //altura total do filme

var distancia = tamanhodoelemento -1; //distancia entre cada elemento

var centerX = Stage.width/2; //centro horizontal do scroller

var centerY = Stage.height - 15; //centro vertical do scroller

var speed = 0.025; //velocidade do scroller

var home:MovieClip = this; //variavel para facilitar acesso ao _root do movie

 

home.cortina._alpha = 0; //escondendo a 'cortina' preta

home.tooltip._alpha = 0; //escondendo o tooltip

home.informacoes._alpha = 0; //escondendo o texto

 

var xml:XML = new XML(); //criando objeto XML

xml.ignoreWhite = true; //evitando a importacao de espaços desnecessários

 

xml.onLoad = function() //funcao que carrega o XML

{

var nodes = this.firstChild.childNodes; //cria a variavel nodes pegando o primeiro item da arvore do XML, no caso 'itens'

numerodeelementos = nodes.length; //cria a variavel contendo o numero de elementos dentro de nodes, no caso o número de nodes 'item'

 

for (i=0; i<numerodeelementos; i++) { //inicia um loop que percorrerá cada um dos elementos

var temp_mc = contentMain.attachMovie("item", "item"+i, i);

var elemento = home.attachMovie("elemento","elemento"+i,i+1); //cria um movieclip (elemento) para o item atual

temp_mc._y += i*(temp_mc._height+space);

elemento._x = (distancia * i) + tamanhodoelemento/2; //posiciona horizontalmente o elemento

elemento._y = centerY; //posiciona verticalmente o elemento

elemento.onEnterFrame = mover; //cria o evento onEnterFrame apontando para a funcao 'mover'

elemento.item.inner.loadMovie(nodes.attributes.image); //carrega a imagem dentro do movieclip

elemento.reflexo.inner.loadMovie(nodes.attributes.image); //carrega a imagem dentro do reflexo

elemento.item.onRollOver = over; //cria o evento onRollOver apontando para a funcao 'over'

elemento.item.onRollOut = out; //cria o evento onRollOut apontando para a funcao 'out'

elemento.item.onRelease = go; //cria o evento onRelease apontando para a funcao 'go'

elemento.toolText = nodes.attributes.tooltip; //armazena o texto do tooltip na propriedade 'tooltext'

elemento.content = nodes.attributes.content; //armazena o texto mais longo na propriedade 'content'

temp_mc.link = item.attributes.link;

}

 

}

xml.load("itens.xml"); //executa a funcao que carrega o XML, importando o arquivo 'itens.xml'

 

function mover() { //cria funcao que move cada um dos itens

var movimento = (_xmouse - (centerX)) * ((-1) * speed); //calcula a posicao do mouse (esquerda ou direita) e multiplica pela variavel 'speed'

if ((!(elemento0._x < ((-1) * (distancia * numerodeelementos) + distancia/2 + largura) && (movimento < 0))) && (!((elemento0._x > distancia/2) && (movimento > 0)))) {

//acima: verifica se a posição do primeiro e ultimo elemento para saber se ainda é possivel movimentar o scroller

this._x = this._x + movimento; //movimenta o elemento

}

}

 

function moveTip() { //funcao que movimenta o tooltip

home.tooltip._x = _xmouse; //movimenta o tooltip horizontalmente seguindo o mouse

home.tooltip._y = centerY - distancia - 90; //posiciona o tooltip acima dos elementos

}

 

function over() { //funcao para quando o mouse está sobre o elemento

var tw:Tween = new Tween(this._parent,"_xscale",Strong.easeOut,this._parent._xscale,120,1,true); //aumenta a escala do elemento horizontalemente

var tw2:Tween = new Tween(this._parent,"_yscale",Strong.easeOut,this._parent._yscale,120,1,true); //aumenta a escala do elemento verticalmente

home.tooltip.texto.text = this._parent.toolText; //seta o texto do tooltip

var tw3:Tween = new Tween(home.tooltip,"_alpha",Strong.easeOut,home.tooltip._alpha,100,1,true); //exibe o tooltip

home.tooltip.onEnterFrame = Delegate.create(this,moveTip); //cria o evento onEnterFrame dentro do tooltip apontando para a funcao 'moveTip'

}

 

function out() { //funcao para quando o mouse deixa de estar sobre o elemento

var tw:Tween = new Tween(this._parent,"_xscale",Strong.easeOut,this._parent._xscale,100,1,true); //retorna o elemento para a sua escala horizontal normal (100%)

var tw2:Tween = new Tween(this._parent,"_yscale",Strong.easeOut,this._parent._yscale,100,1,true); //retorna o elemento para a sua escala vertical normal (100%)

var tw3:Tween = new Tween(home.tooltip,"_alpha",Strong.easeOut,home.tooltip._alpha,0,1,true); //oculta o tooltip

delete home.tooltip.onEnterFrame; //destroi o evento onEnterFrame do tooltip (assim liberamos memoria)

}

 

 

function go() { //funcao para exibir o texto de cada elemento quando clicamos sobre ele

var tw:Tween = new Tween(home.tooltip,"_alpha",Strong.easeOut,home.tooltip._alpha,0,1,true); //esconde o tooltip

for (i=0; i<numerodeelementos; i++) { //inicia um loop que percorrerá cada um dos elementos, para escondê-los

var t:MovieClip = home["elemento"+i]; //para facilitar, guarda um atalho para o elemento dentro da variavel 't'

t.xPos = t._x; //guarda a posição X atual do elemento - [será útil para retornar ao estado inicial]

t.yPos = t._y; //guarda a posição Y atual do elemento - ...

delete t.item.onRollOver; //destroi o evento onRollOver do elemento (assim liberamos memoria)

delete t.item.onRollOut; //destroi o evento onRollOut do elemento ...

delete t.item.onRelease; //destroi o evento onRelease do elemento ...

delete t.onEnterFrame; //destroi o evento onEnterFrame do elemento ...

if(t != this._parent) { //seleciona apenas os elementos que não foram clicados

var tw:Tween = new Tween(t,"_xscale",Strong.easeOut,t._xscale,0,1,true); //anima a escala horizontal do elemento para 0

var tw2:Tween = new Tween(t,"_yscale",Strong.easeOut,t._yscale,0,1,true); //anima a escala vertical do elemento para 0

var tw3:Tween = new Tween(t,"_alpha",Strong.easeOut,100,0,1,true); // anima o alpha do elemento para 0

}

else { //seleciona o elemento clicado

var tw:Tween = new Tween(t,"_xscale",Strong.easeOut,t._xscale,100,1,true); //anima a escala horizontal para 100%

var tw2:Tween = new Tween(t,"_yscale",Strong.easeOut,t._yscale,100,1,true); //anima a escala vertical para 100%

var tw3:Tween = new Tween(t,"_x",Strong.easeOut,t._x,85,1,true); //anima e posiciona o element em x = 85

var tw4:Tween = new Tween(t,"_y",Strong.easeOut,t._y,150,1,true); //anima e posiciona o element em y = 150

/* var tw5:Tween = new Tween(home.cortina,"_alpha",Strong.easeOut,0,95,1,true); //mostra a 'cortina'*/

/* var videoDisplay.setMedia(this.link,"FLV");

*/ var tw5:Tween = new Tween(home.informacoes,"_alpha",Strong.easeOut,0,100,1,true); //mostra o texto

home.informacoes.text = t.content; //seta o texto de informações com os dados do elemento

var s:Object = this; //cria um 'atalho' para o elemento

tw.onMotionStopped = function() { //seta uma ação para quando as animações terminarem

s.onRelease = back; //cria o evento onRelease do elemento ativo para a função 'back'

}

}

}

}

 

function back() //função para retornar ao scroller

{

delete this.onRelease; //deleta o evento onRelease do elemento ativo (para evitar que o usuário clique 2 vezes e ocorra erro)

var tw:Tween = new Tween(home.informacoes,"_alpha",Strong.easeOut,100,0,0.5,true); //oculta o texto

for(var i=0;i<numerodeelementos;i++) { //inicia um loop que percorrerá cada um dos elementos, para re-exibilos

var t:MovieClip = home["elemento"+i]; //para facilitar, guarda um atalho para o elemento dentro da variavel 't'

if(t != this._parent) { //seleciona apenas os elementos que não foram clicados

var tw:Tween = new Tween(t,"_xscale",Strong.easeOut,0,100,1,true); //retorna o elemento para 100% na escala horizontal

var tw2:Tween = new Tween(t,"_yscale",Strong.easeOut,0,100,1,true); //retorna o elemento para 100% na escala vertical

var tw3:Tween = new Tween(t,"_alpha",Strong.easeOut,0,100,1,true); //re-exibe o elemento setando o alpha para 100%

} else { //seleciona o elemento clicado

var tw3:Tween = new Tween(t,"_x",Strong.easeOut,t._x,t.xPos,1,true); //retorna o elemento para sua posição X inicial

var tw4:Tween = new Tween(t,"_y",Strong.easeOut,t._y,t.yPos,1,true); //retorna o elemento para sua posição Y inicial

var tw5:Tween = new Tween(home.cortina,"_alpha",Strong.easeOut,95,0,1,true); //oculta a 'cortina'

tw3.onMotionStopped = function() { //cria uma funcao que será executada qdo as animações acabarem

for(var i=0;i<numerodeelementos;i++) { //inicia um loop que percorrerá cada um dos elementos, para recriar os eventos onRelease, onRollover, onRollout e onEnterFrame

var t:MovieClip = home["elemento"+i]; //para facilitar, guarda um atalho para o elemento dentro da variavel 't'

t.item.onRollOver = Delegate.create(t.item,over); //recria o evento onRollover apontando para a funcao 'over'

t.item.onRollOut = Delegate.create(t.item,out); //recria o evento onRollout apontando para a funcao 'out'

t.item.onRelease = Delegate.create(t.item,go); //recria o evento onRelease apontando para a funcao 'go'

t.onEnterFrame = mover; //recria o evento onEnterFrame apontando para a funcao 'mover'

}

}

}

}

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

tem como você colocar o arquivo para download??? coloque no site http://www.sendspace.com/ eu faço o download do arquivo, analiso e te dou uma resposta!

 

http://www.sendspace.com/file/k8edld aqui está o link do fla

eu gostaria de quando o clica ele chama-se um video pelo xml ...

se puder me ajudar

 

o projeto que eu tenho q fazer é parecido com esse

 

www.cisma.com.br/

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.